单击jquery UI滑块更新滑块最大值
我有一个输入框和一个滑块。它设置为,如果用户在输入框中输入一个数字,它将更改滑块手柄的值。如果用户拖动句柄,则会更新输入框的值 我还需要这样做,如果用户点击一个div,它以kg为单位,另一个div将数字更改为lb。我现在有了它,以便输入框和手柄中的数字将位置更改为新的数字 我的问题是滑块的最大值。如果选择了div#lb,则应为max:100,如果选择了#kg,则应为45。现在它不会更新,因此值始终为100 ie-当我对#lb或#kg使用单击功能时,滑块上的sliderVal不会更新 代码:单击jquery UI滑块更新滑块最大值,jquery,jquery-ui,uislider,Jquery,Jquery Ui,Uislider,我有一个输入框和一个滑块。它设置为,如果用户在输入框中输入一个数字,它将更改滑块手柄的值。如果用户拖动句柄,则会更新输入框的值 我还需要这样做,如果用户点击一个div,它以kg为单位,另一个div将数字更改为lb。我现在有了它,以便输入框和手柄中的数字将位置更改为新的数字 我的问题是滑块的最大值。如果选择了div#lb,则应为max:100,如果选择了#kg,则应为45。现在它不会更新,因此值始终为100 ie-当我对#lb或#kg使用单击功能时,滑块上的sliderVal不会更新 代码: va
var kg = 0.45359237
var sliderVal = 100
$("#lb").click(function() {
$("#inputBox").val( Math.round( $("#inputBox").val()/kg) )
var sliderVal = 100
$("#mySlider").slider("value" , $('#inputBox').val());
});
$("#kg").click(function() {
$("#inputBox").val( Math.round( $("#payload").val()*kg) )
var sliderVal = 45
$("#mySlider").slider("value" , $('#inputBox').val())
});
$( "#payloadSlider" ).slider({
range: "min",
min: 0,
max: sliderVal,
slide: function( event, ui ) {
$( "#inputBox" ).val( ui.value );
$(ui.value).val($('#inputBox').val());
}
});
$("#inputBox").keyup(function() {
$("#mySlider").slider("value" , $(this).val())
});
我尝试过下面的例子,但它仍然没有更新
$("#mySlider").slider("value" , $('#inputBox').val()).refresh();
var lbVal = Math.round( $("#payload").val()/kg)
$("#payload").val( lbVal )
$("#mySlider").prop({max: sliderVal,value: lbVal}).slider("refresh");
谢谢 .slider(“刷新”)不起作用,但我知道发生了什么
我包括:
$("#mySlider").slider("option", "max" , sliderVal );
正前方:
$("#mySlider").slider("value" , $('#inputBox').val());
我相信有更好的方法来写这篇文章,但它是有效的。请注意,必须在滑块值之前声明最大值。我忘记的另一件事是“选项”部分,这一部分很重要
完整代码:
var kg = 0.45359237
var sliderVal = 100
$("#lb").click(function() {
$("#inputBox").val( Math.round( $("#inputBox").val()/kg) )
var sliderVal = 100
$("#mySlider").slider("option", "max" , sliderVal );
$("#mySlider").slider("value" , $('#inputBox').val());
});
$("#kg").click(function() {
$("#inputBox").val( Math.round( $("#payload").val()*kg) )
var sliderVal = 45
$("#mySlider").slider("option", "max" , sliderVal );
$("#mySlider").slider("value" , $('#inputBox').val())
});
$( "#payloadSlider" ).slider({
range: "min",
min: 0,
max: sliderVal,
slide: function( event, ui ) {
$( "#inputBox" ).val( ui.value );
$(ui.value).val($('#inputBox').val());
}
});
$("#inputBox").keyup(function() {
$("#mySlider").slider("value" , $(this).val())
});
你可以在这里找到答案:但基本上看一下美元(“#你的滑块”).slider(“刷新”)