欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Javascript在IE下設(shè)置innerHTML時(shí)出現(xiàn)未知的運(yùn)行時(shí)錯(cuò)誤的解決方法

 更新時(shí)間:2011年01月12日 17:00:54   作者:  
程序代碼思路大致如下,想動(dòng)態(tài)的改變tr標(biāo)簽的innerHTML內(nèi)容,但是IE卻報(bào)未知的運(yùn)行時(shí)錯(cuò)誤
復(fù)制代碼 代碼如下:

<script>
document.getElementById("trone").innerHTML = "<td>haha</td>";
</script>
<tr id="trone">
</tr>

在IE中,有時(shí)候會(huì)出現(xiàn)"未知的運(yùn)行時(shí)錯(cuò)誤(unknown runtime error)",而在firefox里不會(huì)。

這主要是IE在對(duì)innerHTML進(jìn)行寫操作的時(shí)候會(huì)檢查element是否具備做為這些內(nèi)容中html對(duì)象容器的要求,比如如果你是在一個(gè)p里加入包含<li>的html代碼,這是會(huì)出錯(cuò)的。所以如果你發(fā)現(xiàn)這些錯(cuò)誤出現(xiàn),嘗試做兩件事情:
1、檢查你嘗試加到innerHTML的html代碼是否包含破損的html標(biāo)簽,如沒有<ul></ul>包圍的<li></li>.
2、把你的容器改成那些比較“包容”的標(biāo)簽,如<span></span>,<div></div>
特別注意的是<tbody>,<table>,<tr>標(biāo)簽里面加正確格式的<td>標(biāo)簽都有可能出錯(cuò),所以應(yīng)該避免使用這些標(biāo)簽作為容器,必要時(shí)可以用<td>作為容器,再嵌套一層表格。

所以,如果是
<td id="trone"></td>使用document.getElementById("trone").innerHTML="new";就沒問題。
解決方法你可以用javascript動(dòng)態(tài)創(chuàng)建<tr><td>等標(biāo)簽,而不是用innerHTML直接改。

相關(guān)文章

最新評(píng)論