在jQuery滑块小部件中使用非数字值

时间:2012-12-04 11:31:57

标签: jquery select slider

您好我正在使用jQuery滑块在问卷调查中获取人们的意见。此人可以在滑块上选择1到10的值,或者如果他们不知道他们选择“不知道”。我遇到的问题是我似乎无法让滑块计算出数字应该为1-10,然后如果没有选择则不知道是第一个值。如果我使用下面的代码滑块根本不移动。它也绑定到一个选择框并控制它。

<script src="http://code.jquery.com/jquery-1.8.3.js"></script>
<script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script>
<script>
$(function() {
    var select = $( "#enjoyusingdevice" );
    var slider = $( "<div id='slider'></div>" ).insertAfter( select ).slider({
        min: dontknow,
        max: 10,
        range: "min",
        value: select[ 0 ].selectedIndex + 1,
        slide: function( event, ui ) {
            select[ 0 ].selectedIndex = ui.value - 1;
        }
    });
    $( "#enjoyusingdevice" ).change(function() {
        slider.slider( "value", this.selectedIndex + 1 );
    });
});
</script>

1 个答案:

答案 0 :(得分:1)

值必须是数字。此外,您的dontknow没有用引号括起来,所以实际上它正在寻找一个名为dontknow的变量,我猜这个变量不存在,所以min实际上被设置为undefined

作为一种解决方法,您可以让滑块从值1-10开始,并为“我不知道”单独设置复选框。当用户勾选此复选框时,滑块将被禁用。