search

Home  >  Q&A  >  body text

javascript - 请问下IE8及以下的浏览器中怎样写入innerhtml?

请问下IE8及以下的浏览器中怎样写入innerhtml?在现代浏览器中是能够写入,但是在ie8及以下浏览器中就是空值

PHP中文网PHP中文网2820 days ago270

reply all(2)I'll reply

  • 伊谢尔伦

    伊谢尔伦2017-04-10 17:17:07

    你用innertext()试试

    reply
    0
  • PHP中文网

    PHP中文网2017-04-10 17:17:07

    IE6-IE9中不能够直接使用innerHTML,那么就使用replaceChild()函数替换table中的元素,进行替换的元素中包含原本innerHTML要包含的内容
    或者参考下面的代码

     
    <table id="test"> 
    </table> 
    <script> 
    var oTable=document.getElementById("test"); 
    oTable.innerHTML="<tr><td>innerHTML</td></tr>"; 
    </script> 
    
     
    var oTable=document.getElementById("test"); 
    //oTable.innerHTML="<tr><td>innerHTML</td></tr>"; 
    setTableInnerHTML(oTable,"<tr><td>innerHTML</td></tr>"); 
    
    function setTableInnerHTML(table, html) { 
    if(navigator && navigator.userAgent.match(/msie/i)){ 
    var temp = table.ownerDocument.createElement('p'); 
    temp.innerHTML = '<table><tbody>' + html + '</tbody></table>'; 
    if(table.tBodies.length == 0){ 
    var tbody=document.createElement("tbody"); 
    table.appendChild(tbody); 
    } 
    table.replaceChild(temp.firstChild.firstChild, table.tBodies[0]); 
    } else { 
    table.innerHTML=html; 
    } 
    } 
    

    reply
    0
  • Cancelreply