我有一个javascript函数。我使用该函数在html文件中的运行时在表格行中添加列表框。该脚本在IE浏览器,chrome 22和FFox 16中运行正常。但在同一台机器上使用firefox3时,列表框不可见,IE上的所有内容都可以正常使用。innerHTML和FireFox兼容性?
请给我建议,如果需要的任何更改,以便该代码可以在Firefox 3中运行良好以及
这里的JavaScript代码:
function addListBoxes(rowPos)
{
allTables[0].deleteRow(rowPos); //first, delete the row
var row = allTables[0].insertRow(rowPos); //reinsert the row
var cell1=row.insertCell(0);
var cell2=row.insertCell(1);
var cell3=row.insertCell(2);
var cell4=row.insertCell(3);
var cell5=row.insertCell(4);
cell1.innerHTML="";
cell2.innerHTML="<select id='relList' name='select' size='5' multiple></select>";
cell3.innerHTML="";
cell4.innerHTML="<select id='relSubList' name='select' size='5' multiple></select>";
cell5.innerHTML="";
}
UPDATE
一些其他的线程,我发现建议使用document.getElementById,以便更新脚本,但它也不起作用。
function addListBoxes(rowPos)
{
allTables[0].deleteRow(rowPos);
var row = allTables[0].insertRow(rowPos);
row.offsetHeight;
var cell1=row.insertCell(0);
cell1.setAttribute("id", "listRowCell0", 0);
var cell2=row.insertCell(1);
cell2.setAttribute("id", "listRowCell1", 0);
var cell3=row.insertCell(2);
cell3.setAttribute("id", "listRowCell2", 0);
var cell4=row.insertCell(3);
cell4.setAttribute("id", "listRowCell3", 0);
var cell5=row.insertCell(4);
cell5.setAttribute("id", "listRowCell4", 0);
document.getElementById("listRowCell0").innerHTML="";
document.getElementById("listRowCell1").innerHTML="<select id='relList' name='select' size='5' multiple></select>";
document.getElementById("listRowCell2").innerHTML="";
document.getElementById("listRowCell3").innerHTML="<select id='relSubList' name='select' size='5' multiple></select>";
}
您引用了哪些doctype? – KingKongFrog
您是否在稍后的Firefox版本中尝试过它。我可以尝试一下,但我也要采取一些粗略的表格和排行榜等,然后我的情况可能会比你的情况有所不同。 – Sami
简单的HTML和Javascript。没有其他脚本语言。 – user1492667