自訂行政區選取範圍
自訂行政區選取範圍
在本範例中,我們將示範如何建立行政區選取的選單功能,並依照使用者所選取的行政區進行統
計資料篩選,最後繪製被指定行政區範圍的統計地圖。您可以預先建立要讓使用者選取的行政區
選單,接著透過程式取得被使用者選取的行政區代碼後,將代碼提供給統計地圖API進行處理。
建立行政區多選選單:
本範例以宜蘭縣的鄉鎮市區為例,先在選擇資料介面中建立一多選選單,提供使用者進行選擇使
用,可使用<select>物件搭配multiple屬性來建立:
<select id="pRegionCode" class="items_selectOption"style="width:120px;" multiple>
<option value="10002020" selected>羅東鎮</option>
<option value="10002100" selected>三星鄉</option>
<option value="10002110">大同鄉</option>
<option value="10002090" selected>五結鄉</option>
<option value="10002080" selected>冬山鄉</option>
<option value="10002060" selected>壯圍鄉</option>
<option value="10002010" selected>宜蘭市</option>
<option value="10002120">南澳鄉</option>
<option value="10002070" selected>員山鄉</option>
<option value="10002040">頭城鎮</option>
<option value="10002050" selected>礁溪鄉</option>
<option value="10002030">蘇澳鎮</option>
</select>
取得行政區選取設定:
當使用者執行繪製統計地圖時,setStatData()函式將會取得多選選單中被選取的行政區項目,且
將行政區代碼設定為統計地圖API的資料參數之一,最後執行繪製統計地圖功能即可取得結果。
function setStatData(dataObj) {
//取得時間設定
timeList =getMultiOpts(document.getElementById("sTime"));
dataObj.option.timeOpts.time = timeList;
//取得欄位設定
dataObj.dataSet[0].fieldsId =getMultiOpts(document.getElementById("sField"));
//取得行政區設定
dataObj.select.districtCode =getMultiOpts(document.getElementById("pRegionCode"));
}