2015-01-15 18 views
0

我想使用範圍滑塊的值來設置我的數據上的定義表達式。dojox horizo​​ntalrangeslider讀取定義表達式的值

的數據的VAR與創建的:

var POP_Total = new FeatureLayer("..../services/RPP_15/HEX_Confidence_Scores/MapServer/2", { 
        mode: FeatureLayer.MODE_ONDEMAND, 
        outFields: ["*"], 
        opacity: 0.5, 
       }); 

然後定義表達式應用於:

POP_Total.setDefinitionExpression("POP_Total_Class >= 4 AND POP_Total_Class <= 5"); 

在上述情況下,返回值被硬編碼爲僅顯示之間的值4和5.我希望用範圍滑塊中使用的值更改4和5的值。

var sliderRules = new dijit.form.HorizontalRuleLabels({ 
        minimum: 1, 
        maximum: 8, 
        labels: ["1", "2", "3", "4", "5", "6", "7", "8"], 
        labelStyle: "font-size:9px;color: #333", 
        style: "width:220px;height:30px;" 
       }, "ruler"); 



       var rangeSlider = new dojox.form.HorizontalRangeSlider({ 
        name: "rangeSlider", 
        value: [1, 8], 
        minimum: 1, 
        maximum: 8, 
        discreteValues: 8, 
        style: "width:220px;", 
        onChange: function (value) { 
         //alert('change occurred'); 
        } 
       }, "rangeSlider"); 

回答

0

這個答案被張貼阿米爾蘇萊曼在另一個線程:

onChange: function (value) { 
    var min = value[0]; 
    var max = value[1]; 
    var expression = "POP_Total_Class >= " + min + " AND POP_Total_Class <= " + max; 
    POP_Total.setDefinitionExpression(expression); 
} 
範圍滑塊與創建