tbody,你注意了嗎?
請看下列代碼:看完此段代碼,先別急著往下看。你知道結果為什么是這樣嗎?
<html>
<head>parentElement Test</head>
<body>
<form name= "a">
<table name= "b ">
<tr name= "c" >
<td name="d">
<select name= "e" onchange="javascript:alert(this.parentElement.parentElement.parentElement.name) ">
<option> 1 </option>
<option> 2 </option>
<option> 3 </option>
<option> 4 </option>
</select>
</td>
<td> </td>
</tr>
<tr> </tr>
</table>
</form>
</body>
</html>
問題:上述代碼中,并沒有得出我們預想的b,而是undefined。如果把onchange事件中的代碼換成:javascript:alert(this.parentElement.parentElement.parentElement.parentElement.name) ,此時才得出我們預想的b。
請看:
<html>
<head>parentElement Test</head>
<body>
<form name= "a">
<table name= "b ">
<!--這里的tbody,不論你寫上或是不寫,默認都是存在的-->
<tbody name="tbody">
<tr name= "c" >
<td name="d">
<select name= "e" onchange= "javascript:alert(this.parentElement.parentElement.parentElement.name) ">
<option> 1 </option>
<option> 2 </option>
<option> 3 </option>
<option> 4 </option>
</select>
</td>
<td> </td>
</tr>
<tr> </tr>
</tbody>
</table>
</form>
</body>
</html>
還是第一段的代碼,只是在<table>標簽后加了<tbody>,再運行,彈出提示tbody。正是我們預想的。

浙公網安備 33010602011771號