Javascript 无法禁用/启用jQuery中第一次选择(单击)时的复选框

Javascript 无法禁用/启用jQuery中第一次选择(单击)时的复选框,javascript,jquery,Javascript,Jquery,我的问题是,如果您选择任何复选框(收款人)-应禁用/启用具有相同列复选框的其他行 问题#1:我无法禁用/启用首次选择时的复选框。但是,如果您选中任何复选框,请单击“第二次” 问题#2:如果我再次加载页面,先前选中的“带值”复选框将显示为“禁用带值”。我需要它禁用与未选中 下面是我的代码: function onPayeeChkChange() { jQuery(document).ready(function() { $('#tblHousehold tr td#tdpayee

我的问题是,如果您选择任何复选框(收款人)-应禁用/启用具有相同列复选框的其他行

  • 问题#1:我无法禁用/启用首次选择时的复选框。但是,如果您选中任何复选框,请单击“第二次”
  • 问题#2:如果我再次加载页面,先前选中的“带值”复选框将显示为“禁用带值”。我需要它禁用与未选中
下面是我的代码:

function onPayeeChkChange() {

jQuery(document).ready(function() {

    $('#tblHousehold tr td#tdpayee input:checkbox').click(function(){

        var $inputs = $('#tblHousehold tr td#tdpayee input:checkbox')                            
            if($(this).is(':checked')){
                $inputs.not(this).prop('disabled',true); // <-- disable all but checked one
                    }else{
                         $inputs.prop('disabled',false); // <--
                         }

                       });
                            });

                      } 
函数onpayechkchange(){
jQuery(文档).ready(函数(){
$(“#tblHousehold tr td#tdpaye input:复选框”)。单击(函数(){
变量$inputs=$(“#tblHousehold tr td#tdpayee inputs:复选框”)
如果($(this).is(':checked')){

$inputs.not(this.prop('disabled',true);//这就是您要找的吗

注意:如果禁用复选框,以后将无法重新使用它。如果必须禁用它,只需在循环中添加
.prop('disabled',true)

$(函数(){
$(':复选框')。单击(函数(){
var-input=$(this),td=input.closest('td'),table=td.closest('table');
//获取单元格相对于其父行的索引
var i=td.index();
//循环遍历每一行
$('tr',表)。每个(函数(){
//取消选中该行第i个单元格的复选框
$('td:eq('+i+'):复选框',this).not(输入).prop('checked',false);
});
})
});


尝试使用更改事件而不是clickchanged onchange而不是click…。但是没有任何帮助。在我的代码中第一次单击IE not Chrome时,我可以很好地使用IE not Chrome,是否有什么遗漏,但我只是在IF中添加了一条语句,在else中添加了一条语句…请参见下文,、IF($(this).is(':checked'){$inputs.not(this).attr('checked',false);$inputs.not(this.prop('disabled',true);$(this.attr('checked',true);}else{$inputs.removeAttr(“disabled”);