2012-02-20 37 views
0

內部表td我有控件。 td內必須有一個控件,但可以是多個。我可以通過以下方式獲得第一個控制權。檢查一個控件是否可用於td

ctrlTable.rows[i].cells[1].getElementsByTagName("*")[0].value; 

那麼如何檢查是否「TD」 /細胞[1]有更多的控制

感謝,

+0

顯示您的HTML。 – gideon 2012-02-20 12:21:12

+3

什麼是「控制」? 'getElementsByTagName'返回'NodeList':https://developer.mozilla.org/En/DOM/NodeList,它具有'length'屬性。 – 2012-02-20 12:22:17

+0

它是動態表格。它可以是任何控制。這就是爲什麼我把getElementsByTagName(*)。 *可以是任何控制。現在我需要檢查getElementsByTagName(*)[1]是否可用 – selva 2012-02-20 12:27:12

回答

1

單程;

function countEls(cell) { 
    var lookFor = ["INPUT", "SELECT", "BUTTON"]; 
    var count = 0; 
    for (var i = 0; i < lookFor.length; i++) { 
     count += cell.getElementsByTagName(lookFor[i]).length; 
    } 
    return count; 
} 

alert(countEls(ctrlTable.rows[i].cells[1]))​; 
1

要檢查任何DOM元素上孩子的數量,你可以使用childNodes[]財產,例如:

ctrlTable.rows[i].cells[1].childNodes.length > 0 
+0

值得注意的是,如果​​ – 2012-02-20 12:28:32

+0

中有任何空格,那麼Alex是正確的。是的,它的輸入/選擇 – selva 2012-02-20 12:35:02