ie中關(guān)于使用innerhtml加入html代碼的問(wèn)題

字號(hào):


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