在页面中,有一个用户详细信息的表格列表。通过单击“编辑”按钮,可以启用要编辑的内容行。以下代码适用于IE,但在Chrome中没有显示任何响应。我需要该网站同时使用IE和Chrome。不确定为什么chrome没有给出任何回应的原因。
<td style="display:none;" class="bb">
<input class="btn" type="button" value="Edit" style="width:40px;"
onclick="EnableUpdate(this.parentNode.parentNode);">
<input class="btn" type="button" value="Save" style="display:none;width:40px;"
onclick="SaveUpdate(this.parentNode.parentNode);">
</td>
function EnableUpdate(oThisRow){
DeactivateCurrentRow(oThisRow);
var oCellsOfThisRow = oThisRow.childNodes;
var i, oGroup
oGroup = oCellsOfThisRow(4).lastChild;
oGroup.options.length=0;
for (i = 0; i< GroupID.length; i++)
{
oGroup.options[i]=new Option(GroupID[i], GroupID[i]);
if(oGroup.previousSibling.innerText == GroupID[i])
oGroup.selectedIndex=i;
}
for(i=0;i<5;i++)
oCellsOfThisRow(i).lastChild.value = oCellsOfThisRow(i).firstChild.innerText;
for(i =1;i<7;i++) {
oCellsOfThisRow(i).firstChild.style.display = "none";
oCellsOfThisRow(i).firstChild.nextSibling.style.display = "block";
}
}
答案 0 :(得分:1)
我不知道你是如何加载你的代码的,但是如果你用文件onload加载它,那么这不会起作用,因为首先创建DOM,onclick代码的作用域设置为功能未知的时间。
window.onload = function(){
function EnableUpdate(...){....};
}
如果您使用jquery并将所有代码放在此
中,则很容易发生这种情况$(function(){});
所以不要使用onclick属性,而是使用
myElement.addEventListener('click',EnableUpdate);
也在onload函数中