table的子節點問題,這個table的子節點問什么只有2個?
<!DOCTYPE html>
<html>
?<head>
? <title> new document </title> ?
? <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> ??
?</head>?
?<body>?
? <table border="1" width="50%" id="table">
? <tr>
<th>學號</th>
<th>姓名</th>
<th>操作</th>
? </tr> ?
? <tr>
<td>xh001</td>
<td>王小明</td>
<td><a href="javascript:;" onclick="deleteRow(this)">刪除</a></td>
? </tr>
? <tr>
<td>xh002</td>
<td>劉小芳</td>
<td><a href="javascript:;" onclick="deleteRow(this)">刪除</a></td>
? </tr> ?
? </table>
??
? <script type="text/javascript"> ?
var mytr=document.getElementById("table").childNodes;
? ? ? ? ??
document.write(mytr.length);
? </script>?
?</body>
</html>
2016-11-07
自己看審查元素,你寫得不標準,瀏覽器給你加個tbody,還有一個一個子元素應該是瀏覽器給它加了個換行符。
我們在html上這樣寫的話是長度是3個(下圖)
而這樣寫的話長度是1(下圖)
總之:反正換行符是算一個的。與其用childNodes這種方式不如用getElementByTagName("tr")。
2016-12-10
瀏覽器給你的代碼加了tbody之后,像是td tr 就不再是table的子節點,而是tbody的子節點了