以下代码只是说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
答案 0 :(得分:2)
icheckBoxes[i].is(":checked")
应该是
icheckBoxes.eq(i).is(":checked")
[]
将元素从jQuery对象中分离出来,is()
是一个jQuery方法。
另外,作为旁注,$('input[type="checkbox')
在其末尾缺少"]
,以使其成为有效的选择器。