javascript复选框问题

时间:2018-05-22 18:49:19

标签: javascript jquery

以下代码只是说unexpected identifier;

var icheckBoxes = $('input[type="checkbox"]');
            for(int i=0; i < icheckBoxes.length; i++) {
                if (!icheckBoxes[i].is(":checked")) { 
                    $('input[type="checkbox').addClass('has-error');    
                    AgreeIsActive = false;
                    $('#AgreementSubmit').prop('disabled', false);  
                   return;
                }
            }

似乎是int作为罪魁祸首,但我尝试将其更改为var,但没有成功,并得到了不同的错误:

Uncaught TypeError: icheckBoxes[i].is is not a function

更新#1

新代码添加了帮助

var icheckBoxes = $('input[type="checkbox"]');
            alert(icheckBoxes.length);
            for(var i=0; i < icheckBoxes.length; i++) {
                alert(i);
                //if (!icheckBoxes[i].is(":checked")) { 
                if(!icheckBoxes.eq(i).is(":checked")) { 
                    alert(i);
                    $('input[type="checkbox').addClass('has-error');    
                    AgreeIsActive = false;
                    $('#AgreementSubmit').prop('disabled', false);  
                   return;
                }
            }

它表示长度为4然后它进入内部并且它提醒4次0并且下一个警报在if条件内,它只提醒它1次并且也是0

1 个答案:

答案 0 :(得分:2)

icheckBoxes[i].is(":checked")

应该是

icheckBoxes.eq(i).is(":checked")

[]将元素从jQuery对象中分离出来,is()是一个jQuery方法。

另外,作为旁注,$('input[type="checkbox')在其末尾缺少"],以使其成为有效的选择器。