esri-leaflet查询多个功能(使用setWhere)

时间:2015-05-20 16:34:01

标签: leaflet arcgis

我们在ArcGIS Online中创建了一个地图,该地图通过Leafletjs在我们的网站上实现。我们的目的是查询多个功能,但我们不知道如何,因为我们没有太多的编程知识(地理学生)。

具体问题:我们有多个关于远足径的下拉菜单,并希望让用户选择例如区域和持续时间。但到目前为止,如果进行了第二次选择,则删除先前选择中的选项,并且仅选择最新选择。

有什么建议吗?谢谢你! Corin&组

CODE: 其中一个价值定义:

<div class="refinement_title">Choose a region</div>
  <div id="query" class="leaflet-bar">
<label>
  <select id="region_nr">
    <option value=''>Alle anwählen</option>
    <option value='1'>Berner Oberland</option>
    <option value='2'>Graubünden</option>
    <option value='3'>Innerschweiz</option>
    <option value='4'>Mittelland</option>
    <option value='5'>Ostschweiz</option>
    <option value='6'>Tessin</option>
    <option value='7'>Wallis</option>
    <option value='8'>Westschweiz</option>
  </select>
</label>

,查询如下所示:

  var region_nr = document.getElementById('region_nr');
  var difficulty = document.getElementById('difficulty');
  var time_nr = document.getElementById('time_nr');
  var season = document.getElementById('season');

  region_nr.addEventListener('change', function(){
    trails.setWhere('region_nr="'+region_nr.value+'"');
  });

  difficulty.addEventListener('change', function(){
trails.setWhere('difficulty="'+difficulty.value+'"');
  });
  time_nr.addEventListener('change', function(){
trails.setWhere('time_nr="'+time_nr.value+'"');
  });
  season.addEventListener('change', function(){
    trails.setWhere('season="'+season.value+'"');
  });

1 个答案:

答案 0 :(得分:0)

试试这个例子:

trails.setWhere('difficulty IN (' + difficulty.value + ')');

您还可以将多个值分隔为,