L'API JS di ArcGIS Server contiene una nuova classe FeatureTable , che mostra la tabella degli attributi corrispondente a un FeatureLayer. C'è un'opzione syncSelection che:
Abilita un'interazione tra la mappa e la tabella delle caratteristiche. L'impostazione di questa proprietà su true consente la selezione di una funzione su una mappa facendo clic sulla riga nella tabella e la selezione della riga di una tabella facendo clic su una funzione sulla mappa
Tuttavia, questo non sembra onorare un set di selezione fatto programmaticamente contro il livello.
Prendendo l'esempio su https://developers.arcgis.com/javascript/3/sandbox/sandbox.html?sample=featuretable , se applico una selezione al FeatureLayer non si riflette nella FeatureTable:
// Create the feature layer
myFeatureLayer = new FeatureLayer("https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/Warren_College_Trees/FeatureServer/0", {
mode: FeatureLayer.MODE_SELECTION,
visible: true,
outFields: ["*"],
id: "fLayer"
});
var myQuery = new Query();
myQuery.where = "Spp_Code ='SABA'";
myFeatureLayer.selectFeatures(myQuery,FeatureLayer.SELECTION_NEW)
Questo applica correttamente la selezione al feature layer (nota che la mappa contiene solo un punto), ma non alla tabella delle feature (elenca tutti i 1146 punti con 0 selezionato):
C'è un modo per aggiornare la tabella delle caratteristiche per riflettere il set di selezione?