让我安静一会 2016-12-21 07:19 采纳率: 0%
浏览 3124
已结题

ie8 不兼容innerHTML 怎么解决

主要代码
for(var i=0;i<items.length;i++){
var item = items[i].split(",");

                    var tr = document.createElement("tr");
                    var strHtml="";
                    if(item[0] == "0" && item[1] == "0"){
                        strHtml +="<td class='result' align='center' ><input name='select' type='checkbox' value='0' /></td>"
                    }else if(item[0] == "0" && item[1] == "1"){
                        strHtml += "<td class='result' align='center' ><input name='select' type='checkbox' value='0'  disabled=true/></td>";
                    }else if(item[0] == "1" && item[1] == "0"){
                        strHtml += "<td class='result' align='center' ><input name='select' type='checkbox' value='1' checked=true/></td>";
                    }else if(item[0] == "1" && item[1] == "1"){
                        strHtml +="<td class='result' align='center' ><input name='select' type='checkbox' value='1' checked=true disabled=true/></td>";
                    }

                    if(item[1] != "undefined" && item[1] != undefined ){
                    var tables = document.getElementById("ordList");
                        strHtml +="<td class='result' align='center' >"+item[2]+"</td>";
                        strHtml +="<td class='result' align='center'>"+item[3]+"</td>";
                        strHtml +="<td class='result' align='center'>"+item[4]+"</td>";
                        strHtml +="<td class='result' align='center'>"+item[5]+"</td>";
                        strHtml +="<td class='result' align='center'>"+item[6]+"</td>";
                        strHtml +="<td class='result' align='center' >"+item[7]+"</td>";
                        strHtml +="<td class='result' align='center'>"+item[8]+"</td>";
                        strHtml +="<td class='result' align='center' >"+item[9]+"</td>";

                        strHtml +="<td class='result' align='center' style='display:none;'>"+item[10]+"</td>";
                        strHtml +="<td class='result' align='center' style='display:none;'>"+item[11]+"</td>";
                        strHtml +="<td class='result' align='center' style='display:none;'>"+item[12]+"</td>";
                        strHtml +="<td class='result' align='center' style='display:none;'>"+item[13]+"</td>";

                        tr.innerHTML = strHtml;
                        //table.appendChild(tr);
                        //table.appendHTML(tr);
                        tables.rows[1].innerHTML=strHtml;

                        问题是tables.rows[1].innerHTML=strHtml; ie8不能这样用    ie11没有问题   ie8下//table.appendChild(tr);也追加不上
  • 写回答

4条回答 默认 最新

  • 花村大地主 2016-12-21 08:20
    关注

    这个还真麻烦,IE确实是不支持设置,不过支持读取innerHTML的读取
    你得改用

     var newRow = document.getElementById(tableID).insertRow(0);      //0为里面的节点的索引,也就是插入的顺序
    var newCell = newRow.insertCell(0);   
    var newText = document.createTextNode('New top row');
    
    newCell.appendChild(newText);        //这样完成了一个行到列的插入
    

    参考

    https://developer.mozilla.org/en-US/docs/Web/API/HTMLTableElement/insertRow

    评论

报告相同问题?

悬赏问题

  • ¥100 求汇川机器人IRCB300控制器和示教器同版本升级固件文件升级包
  • ¥15 用visualstudio2022创建vue项目后无法启动
  • ¥15 x趋于0时tanx-sinx极限可以拆开算吗
  • ¥500 把面具戴到人脸上,请大家贡献智慧
  • ¥15 任意一个散点图自己下载其js脚本文件并做成独立的案例页面,不要作在线的,要离线状态。
  • ¥15 各位 帮我看看如何写代码,打出来的图形要和如下图呈现的一样,急
  • ¥30 c#打开word开启修订并实时显示批注
  • ¥15 如何解决ldsc的这条报错/index error
  • ¥15 VS2022+WDK驱动开发环境
  • ¥30 关于#java#的问题,请各位专家解答!