复选框状态更改检测

Checkbox state change detection

本文关键字:检测 状态 复选框      更新时间:2023-09-26

我有一个场景,根据复选框是选中还是现在选中,显示/隐藏屏幕的一部分。

因此,这里的问题是,不仅用户将更改复选框的状态,而且还将以编程方式进行更改。

那么,我如何检测这种变化,当复选框的状态发生变化时,我想隐藏或显示部分。

现在我是这样做的。。。

    externalCheckBoxClicked : function (e){
        var $target = $(e.target),
          checked = $target.prop('checked');
        if(checked){
            $('#confirm-button').show();
        }else{
            $('#confirm-button').hide();
        }
    }
    setToPreviousSetValues : function(){
        if(this.requestData.isOverrideExternalParams === "1"){
            $('#ExternalParametersChkBox').prop('checked',true);
        }else {
            $('#ExternalParametersChkBox').prop('checked',false);
        }
    },
   events: {
       "change #ExternalParametersChkBox":"externalCheckBoxClicked",
    },

为什么这不起作用的任何线索。

你可以试试这个:

$(".checkbox").change(function() {
    if(this.checked) {
        //Do stuff
    }
});

您可以在此处添加.checkbox Something Class File或Id File

$('#yourID').change(function() {
  // your code
});
<input type="checkbox" id="something" />
$("#something").click( function(){
   if( $(this).is(':checked') ) alert("checked");
});

当复选框由于单击以外的其他原因(如使用键盘(而发生更改时,执行此操作将不起作用。若要避免此问题,请收听更改而不是单击。

来源:捕捉复选框的选中更改事件

对于编程更改:为什么不是';是否触发了我的复选框更改事件?