bootstrap-switch复选框值始终“on”

时间:2015-09-30 09:54:18

标签: jquery twitter-bootstrap

我正在开发CMS并在添加表单上我在表单中使用Bootstrap-switch。但它始终返回checkedon值。

JSFiddle

CODE

<html>
<head>
<link rel="stylesheet" type="text/css" href="http://www.bootstrap-switch.org/docs/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="http://www.bootstrap-switch.org/dist/css/bootstrap3/bootstrap-switch.css">
<script type='text/javascript' src="http://www.bootstrap-switch.org/docs/js/bootstrap.min.js"></script>
<script type='text/javascript' src="http://www.bootstrap-switch.org/dist/js/bootstrap-switch.js"></script>
<script type='text/javascript'>

$(window).load(function(){

    var s = $('#status').val();
    $("#status").change(function(){
        alert(s);
    });

});
</script>

</head>
<body>

    <input type="checkbox" id="status" name="status" checked>

</body>
</html>

6 个答案:

答案 0 :(得分:5)

只需以这种方式阅读已检查状态:

$("#status").change(function(){
    alert(this.checked);
});

Fiddle Example

答案 1 :(得分:3)

改变
var s = $('#status').val();
$("#status").change(function(){
    alert(s);
});

$("#status").change(function(){
    if(this.checked == true)
    {
        s = 'on';
    }
    else
    {
        s = 'off';        
    }
    alert(s);
});

答案 2 :(得分:2)

可以这样做:

$(function(){
            $("#status").change(function(){
                if($(this).is(':checked')) { alert('on');}
                else alert('off');
            });
    });

答案 3 :(得分:1)

尝试FIDDLE

您可以使用以下事件来获取当前值。

$('#status').bootstrapSwitch('state', true);


$('#status').on('switchChange.bootstrapSwitch', function (event, state) {

    alert(this);
    alert(event);
    alert(state);
    event.preventDefault();
});

希望有所帮助

答案 4 :(得分:1)

您可以在 jquery 中使用 :checked

$('#switch').is(':checked')

答案 5 :(得分:0)

正确答案是

$("input[name='courseFreePaid']").bootstrapSwitch('state');

这将返回真或假