Javascript无法在Chrome上运行

时间:2016-02-18 01:40:05

标签: javascript google-chrome

在页面中,有一个用户详细信息的表格列表。通过单击“编辑”按钮,可以启用要编辑的内容行。以下代码适用于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";
  }
}

1 个答案:

答案 0 :(得分:1)

我不知道你是如何加载你的代码的,但是如果你用文件onload加载它,那么这不会起作用,因为首先创建DOM,onclick代码的作用域设置为功能未知的时间。

window.onload = function(){
   function EnableUpdate(...){....};
}

如果您使用jquery并将所有代码放在此

中,则很容易发生这种情况
$(function(){});

所以不要使用onclick属性,而是使用

myElement.addEventListener('click',EnableUpdate);

也在onload函数中