innerhtml屬性在原生javascript中被用于在一個標(biāo)簽內(nèi)部加入html代碼,但是這個方法也不是在所有情況下適用,就比如在ie下面。
看如下代碼:
代碼如下:
<tbodyid='22'>
</tbody>
我們現(xiàn)在想通過innerhtml屬性給tbody中間加入<tr>等html代碼,會這么做:
代碼如下:
<spanstyle=font-family:simsun;font-size:14px;>document.getelementbyid('22').innerhtml='<tr></tr>'</span>
這樣在chrome下是ok的,但是換到ie下,就會報錯,且ie下報的錯并不指明是innerhtml出問題了,它只告訴你這一行代碼有問題。為什么呢?
查看一下ms的msdn就知道答案了,原文msdn-innerhtml。在ms關(guān)于innerhtml說明的文章中,有這么一句:
“theinnerhtmlpropertyisread-onlyonthecol,colgroup,frameset,html,head,style,table,tbody,tfoot,thead,title,andtrobjects.”說明在ie下,這些的innerhtml屬性是只讀的。
如果想在里面設(shè)置內(nèi)容,只能設(shè)置純文本,用innertext。