2012-07-05 3 views
0
var cbx = document.getElementById('ModelFilter').getElementsByTagName('input'); 
var ArrCB_l=cbx.length; 

while(ArrCB_l--){ 
    var CB=ArrCB[ArrCB_l]; 
    CB.checked()==True; 
    return 1 
} 
return 0 

Может ли кто-нибудь сказать мне, что в этом плохого? Я знаю, что первая строка - правильный ввод, поскольку я использую его в другом месте для тех же флажков, однако это не сработает? Я пытаюсь убедиться, что по крайней мере один флажок установлен. Эта функция вызывается с событием onsubmit.validating checkbox limit javascript

ответ

1
while(ArrCB_1) { 
    if(cbx[--ArrCB_1].checked) { 
     return true; 
    } 
} 
return false; 
0
while(ArrCB_l--){ 
    if (cbx[ArrCB_l].checked) { 
     return true; 
    } 
} 
return false; 

ваша коллекция cbx и не ArrCB, и проверил это не метод, но это атрибут/свойство элемента

0
document.getElementById('ModelFilter').getElementsByTagName('input'); 

этот код возвращает все входы (текст, кнопка, радио и т. д.)

document.getElementById('ModelFilter').getElementsByTagName("input")[ArrCB_l].type == "checkbox"