2019独角兽企业重金招聘Python工程师标准>>>
1)在ie下,table标签直接使用appendChild增加document.createElement('tr')的行时不显示,但是在firefox下是没有问题的。如下
<table id="table1" border='1'></table> <script type='text/javascript'> var tb=document.getElementById('table1'); var tr=document.createElement('tr'),td=document.createElement('td'); td.innerHTML=new Date(); tr.appendChild(td);//行增加单元格 tb.appendChild(tr);//表增加行 </script> |
注意:tr .innerHTML =“”;这句话在ie下不能使用
解决办法就是在table标签内增加tbody标签,tbody使用appendChild时在ie和firefox下都可以显示了。
<table border='1'><tbody id="tbody1"></tbody></table> <script type='text/javascript'> var tb=document.getElementById('tbody1'); var tr=document.createElement('tr'),td=document.createElement('td'); td.innerHTML=new Date(); tr.appendChild(td);//行增加单元格 tb.appendChild(tr);//表增加行 </script> |
<table id="table2" border='1'></table> <script type='text/javascript'> var tb=document.getElementById('table2'); var tr=tb.insertRow(),td=tr.insertCell(); td.innerHTML=new Date(); </script> |
解决办法就是把行号和列号作为参数传入
但是要注意,传递的行号不能大于当前的行的长度,如已经有2行,你可以传递2,但是不能传递3。就如同强类型语言的数组一样,不能越界
<table id="table3" border='1'></table> <script type='text/javascript'> var tb=document.getElementById('table3'); var tr=tb.insertRow(tb.rows.length)//这样传递,插入在最后,你也可以传递其他的 ,td=tr.insertCell(0); td.innerHTML=new Date(); </script> |