Javascript函数滑块的返回值

时间:2011-12-23 08:17:32

标签: javascript slider

我目前有一个类似iOS的开/关滑块,并希望将其值1或0返回到隐藏的HTML字段。

JavaScript看起来像这样:

    $(document).ready(function(){
        initCheckBoxes();
    });

    var slideSpeed = 150;
    var leftDist = 42;

    function initCheckBoxes()
    {
        $( ".cb-slider" ).draggable({containment: "parent"});
        $(".cb-slider").mouseup(function(){

            var status = $(this).attr("cb-status");

            switch(status)
            {
            case "0":
                //its off, slide it by 41px;
                $(this).animate({left: leftDist}, slideSpeed);
                //change status to 1
                $(this).attr("cb-status", "1");

            break;

            case "1":
                //its on, slide it to 0px;
                $(this).animate({left: "0"}, slideSpeed);
                //change status to 0
                $(this).attr("cb-status", "0");

            break;
            }
    });


}

我关注的价值是var status

我无法弄清楚如何返回此值。

2 个答案:

答案 0 :(得分:0)

在我看来,您不想“返回”该值,而是更改隐藏字段的值。将其添加到mouseup事件:

$( '#hidden' ).val( status );

其中#hidden是隐藏输入字段的选择器。

答案 1 :(得分:0)

您的函数应用于由选择器$(".cb-slider")匹配的所有元素。您确定要将最后更改的滑块的选定值存储在共享位置吗?

我假设您在提交表单时想要访问滑块服务器端的值。如果是这种情况,你需要一些独特的滑块标识,将它们彼此分开,并知道哪一个。

<强>更新

jsFiddle 创建了一个插件示例,请查看。