jQuery更改为返回已选中或未选中状态

时间:2012-08-22 06:48:25

标签: javascript jquery callback return onchange

我正在尝试使用以下函数返回truefalse,根据复选框的状态,我正在使用jQuery iButton插件(隐藏复选框并将其替换为支持拖动事件的iPhone样式滑动按钮)我发现检测拖动以及单击事件的唯一方法是使用jQuery更改。

var testChecked= function(){
    $('#status').change(function(){ // #status is the checkbox ID
        if($(this).is(':checked')){
            console.log('is_checked');//works
            return true;
        }
        else{
            console.log('is_unchecked');//works
            return false 
        } 
    });
}

http://jsfiddle.net/fnt5J/1/

2 个答案:

答案 0 :(得分:3)

我不知道代码中的status是什么。

正如你提到的iButton jQuery插件,我在谷歌上搜索了这个页面。 http://www.givainc.com/labs/ibutton_jquery_plugin.htm

我刚刚在chrome控制台中输入了这个$('#iButton').attr('checked');语句,根据ON和OFF状态,我得到了truefalse的正确状态。

所以我认为你必须在你的代码中做以下事情。

$('#status').change(function(){
    return $('#iButton').attr('checked');
})

答案 1 :(得分:0)

在iButton jQuery Plug-in中有许多选项可用,因此您可以使用事件处理程序:更改。

$('#ibutton').iButton({
  change: function (){
    if($('#ibutton').attr('checked'))
       console.log("TRUE");
    else
       console.log("FALSE");
  }
});