我目前有一个类似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
。
我无法弄清楚如何返回此值。
答案 0 :(得分:0)
在我看来,您不想“返回”该值,而是更改隐藏字段的值。将其添加到mouseup事件:
$( '#hidden' ).val( status );
其中#hidden
是隐藏输入字段的选择器。
答案 1 :(得分:0)
您的函数应用于由选择器$(".cb-slider")
匹配的所有元素。您确定要将最后更改的滑块的选定值存储在共享位置吗?
我假设您在提交表单时想要访问滑块服务器端的值。如果是这种情况,你需要一些独特的滑块标识,将它们彼此分开,并知道哪一个。
<强>更新强>
在 jsFiddle 创建了一个插件示例,请查看。