2012-07-05 78 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事件調用。驗證複選框限制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"