我有一个页面。它有许多 JQueryUI 滑块。这些滑块的值可以通过文本框或手动拖动滑块来设置。可以通过更改下拉菜单中的选项来设置滑块的最小值和最大值,例如:
Select slider:
<select class="dropdown" id="slider3_select">
<option value="1" data-low="1" data-high="50">Sips</option>
<option value="2" data-low="1" data-high="25">Cups</option>
<option value="3" data-low="1" data-high="10">Litres</option>
</select>
我用来获取上面的 data-low 和 data-high 值并根据它们更新滑块的 JQuery 是:
$('.dropdown').change(function(){
var selector = ("#" + $(this).parent().find(".slider").attr("id")),
currentVal = parseInt($(selector).slider("value")),
newBegin = $(this + "option:selected").data("low"),
newEnd = $(this + "option:selected").data("high");
$(selector).slider({
value: currentVal,
min: newBegin,
max: newEnd
});
});
这适用于页面上的第一个滑块,但对于后续滑块失败 - 在这些滑块上,newBegin 和 newEnd 的值无法更新。我想我的目标是 select .dropdown 或 option:selected 不正确,谁能看到我哪里出错了?