ie中關于使用innerhtml加入html代碼的問題

字號:


    innerhtml屬性在原生javascript中被用于在一個標簽內部加入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關于innerhtml說明的文章中,有這么一句:
    “theinnerhtmlpropertyisread-onlyonthecol,colgroup,frameset,html,head,style,table,tbody,tfoot,thead,title,andtrobjects.”說明在ie下,這些的innerhtml屬性是只讀的。
    如果想在里面設置內容,只能設置純文本,用innertext。