2017-06-02 43 views
-1

我需要創建一個簡單的網頁,我可以在其中看到過濾器的結果,而不是每天創建過濾器。這樣,當我登錄到弧GIS時,結果將每天自動刷新。Esri Arc Online使用API​​將過濾結果轉化爲簡單的網頁

我聽說有一個API,我的想法是否可行?

+1

目前尚不清楚你在ArcGIS Online的「過濾器」的意思,或「結果」(點subet的報告表格數據?別的?)。請澄清你的最終目標是什麼。 – Erica

+1

對圖層的定義查詢 –

+0

可能嗎? –

回答

1

假設您要過濾FeatureLayer - 原始問題尚不清楚,但FeatureLayer似乎合乎邏輯 - 您應設置definitionExpression屬性,如the FeatureLayer documentation中所述。

下面是一個例子:(?一個層上的定義查詢)?

<!DOCTYPE html> 
<html> 
<head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="initial-scale=1,maximum-scale=1,user-scalable=no"> 
    <title>FeatureLayer - 4.3</title> 

    <link rel="stylesheet" href="https://js.arcgis.com/4.3/esri/css/main.css"> 
    <script src="https://js.arcgis.com/4.3/"></script> 

    <style> 
    html, 
    body, 
    #viewDiv { 
     padding: 0; 
     margin: 0; 
     height: 100%; 
     width: 100%; 
    } 
    #filterDiv { 
     position: absolute; 
     top: 12px; 
     right: 12px; 
     padding: 12px; 
     background-color: rgba(0, 0, 0, 0.5); 
     color: white; 
    } 
    </style> 

    <script> 
    require([ 
     "esri/Map", 
     "esri/views/MapView", 
     "esri/layers/FeatureLayer", 
     "dojo/dom", 
     "dojo/on", 
     "dojo/domReady!" 
     ], 
     function(
     Map, 
     MapView, 
     FeatureLayer, 
     dom, 
     on 
    ) { 

     var map = new Map({ 
      basemap: "hybrid" 
     }); 

     var view = new MapView({ 
      container: "viewDiv", 
      map: map, 

      extent: { 
      xmin: -9177811, 
      ymin: 4247000, 
      xmax: -9176791, 
      ymax: 4247784, 
      spatialReference: 102100 
      } 
     }); 

     var featureLayer = new FeatureLayer({ 
      url: "https://services.arcgis.com/V6ZHFr6zdgNZuVG0/arcgis/rest/services/Landscape_Trees/FeatureServer/0", 
      definitionExpression: "Sci_Name = 'Ulmus pumila'" 
     }); 

     map.add(featureLayer); 

     view.then(function() { 
      on(dom.byId("filterInput"), "change", updateFilter); 

      function updateFilter(ev) { 
      featureLayer.definitionExpression = ev.target.checked ? 
       "Sci_Name = 'Ulmus pumila'" : 
       undefined; 
      } 
     }); 

     }); 
    </script> 
</head> 

<body> 
    <div id="viewDiv"></div> 
    <div id="filterDiv"> 
    <label>Filter 
     <input id="filterInput" type="checkbox" checked="yes"> 
    </label> 
    </div> 
</body> 

</html>