为了账号安全,请及时绑定邮箱和手机立即绑定

IE8这个appendChild()难道和别的浏览器不一样?

IE8这个appendChild()难道和别的浏览器不一样?

我吃炸土豆 2016-06-19 01:24:56
我本来是写一个表格的动态增加和删除行,在谷歌浏览器上正常的代码,在IE8上面就要报错。调试之后我发现IE8这个虽然appendChild成功显示了,但是表格的行数还是没变,太奇怪了<!DOCTYPE html> <html> <head>     <title>原鉴定情况</title>     <meta charset="UTF-8"/>     <script type="text/javascript"> function updatePage(){ var buttons = document.getElementsByName("isHave"); for(var i=0;i<buttons.length;i++){ if(buttons[i].checked && buttons[i].value == "无"){ document.getElementById("oldResult").style.display = "none"; }else if(buttons[i].checked && buttons[i].value == "有"){ document.getElementById("oldResult").style.display = "block"; } }      } function addTableRow(tableId) { var table = document.getElementById(tableId); var tr = table.rows[table.rows.length-1].cloneNode(true);     table.appendChild(tr); } function del() {     var oldTable = document.getElementById("oldResult");     var checks = document.getElementsByName("selected");         for (var i = checks.length-1; i > 0; i--) {         if (checks[i].checked) {             oldTable.deleteRow(i+1);             }     }     }     </script> </head> <body>     <table>         <tr>             <td>原鉴定情况</td>         <td>         <input type="radio" name="isHave" value="无" onclick="updatePage()" checked="checked"/><label>无</label>         <input type="radio" name="isHave" value="有" onclick="updatePage()" /><label>有</label>             <table id="oldResult" style="display:none">             <tr>             <td colspan="5" align="right">                             <input type="button" value="增加" onclick="addTableRow('oldResult')" />                             <input type="button" value="删除" onclick="del()" />             </td>             </tr>                     <tr>             <td><input type="checkbox" name="selected" class="ckeck"/></td>             <td>原鉴定机构</td>             <td>原鉴定时间</td>             <td>原鉴定结论</td>             <td>鉴定书附件</td>                     </tr>             <tr>         <td>         <input type="checkbox" name="selected" class="ckeck"/> </td>         <td>         <select name="oranization">         <option value="省">省级物证鉴定中心</option>             <option value="市">市级物证鉴定所</option>             <option value="县">县级物证鉴定技术室</option>             <option value="社">社会司法鉴定机构</option>         </select> </td>         <td>         <input type="text" name="time"/> </td>         <td> <input type="text" name="result"/> </td>         <td>         <input type="button" value="上传" />         </td>                     </tr>                 </table>             </td>         </tr>     </table> </body> </html>
查看完整描述

1 回答

?
柠檬酸钠

TA贡献331条经验 获得超534个赞

IE11开IE8的渲染模式目测没有问题,楼主输出一下tr是什么

查看完整回答
1 反对 回复 2016-06-19
  • 我吃炸土豆
    我吃炸土豆
    tr输出是object HTMLTableRowElement 增加是没有问题的,但是删除增加的就会报错,删除本身写的一行没问题。而且无论增么增加表格的行的长度还是3。
  • 柠檬酸钠
    柠檬酸钠
    楼主代码稍微有点问题,如果你把仅有的一行删掉,然后点击添加,你会发现复制出的最后一眼竟然是标题!!!至于ie删除失败的话,楼主看一下是哪一行报错了
  • 我吃炸土豆
    我吃炸土豆
    逻辑就是复制最后一行,哪个是可以修改的。报错的或就在deleteRow那行
点击展开后面1
  • 1 回答
  • 0 关注
  • 4295 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信