为什么给table一个id如“newTable”,再在js呆用#(“ newTable”).innerHTML去加表的行和列怎么不行呀?
如这样:articleStr += "<tr><td width='70%'><img src='../../images/d6.gif' width='16' height='16'><a href='showDataArticle.html?id=" +
ViewDataSupport.map.id + "' target='_blank'>" + ViewDataSupport.map.title +
"</a>"+pointStr + ViewDataSupport.map.author +
"</td> <td width='30%'> <a href='../addData/addData.html?id="+ViewDataSupport.map.id+"'>修改</a>|"
+"<a href='###' onclick='ViewDataSupport.removeConfirm("+ViewDataSupport.map.id+")'>删除</a></td></tr>";
$("indexData").innerHTML = articleStr ;这样在FF里正常为什么IE就不行
如这样:articleStr += "<tr><td width='70%'><img src='../../images/d6.gif' width='16' height='16'><a href='showDataArticle.html?id=" +
ViewDataSupport.map.id + "' target='_blank'>" + ViewDataSupport.map.title +
"</a>"+pointStr + ViewDataSupport.map.author +
"</td> <td width='30%'> <a href='../addData/addData.html?id="+ViewDataSupport.map.id+"'>修改</a>|"
+"<a href='###' onclick='ViewDataSupport.removeConfirm("+ViewDataSupport.map.id+")'>删除</a></td></tr>";
$("indexData").innerHTML = articleStr ;这样在FF里正常为什么IE就不行
所以还是用DOM来操作吧,比如appendChild之类的操作
var newRow=document.createElement("tr");
document.getElementById("newTable").appendChild(newRow);
<html>
<head>
<title></title>
<script type="text/javascript">
var num=1;//行的初始id
var rowNum=5;//一次添加的个数
function $(elem)
{
return typeof elem=="string"?document.getElementById(elem):elem;
}
function addText()
{
var tab=$("tab");
var row=tab.insertRow(-1);
row.id="row"+num;
var cell1=row.insertCell(-1);
cell1.innerHTML="<INPUT type='file' id='file"+num+"'>";
num++;
}
function init_table()
{
for(var i=0;i<5;i++)
{
addText();
}
}
</script>
</head>
<body onload="init_table();">
<table id="tab" border=1 width=200px >
</table>
<input type="button" onclick="addText()" value="add">
</body>
</html>
你就写一个IE能识别的操作方式即可
我同意上面8楼的回答 DOM方式操作最佳
var td = document.createElement("td");
td.className = "class名字";
td.innerHTML = "<img src=''/>";//td可以用innerHTML
tr.appendChild(td);
然后是table或者tbody.appendChild(tr);