SCRIPT 600错误:此操作的目标元素无效

时间:2011-08-24 17:57:59

标签: javascript internet-explorer

我有一个可以在FireFox和Chrome中运行良好的php网站,但在IE中完全崩溃。

这里只是一个抛出错误的脚本...... SCRIPT600:此操作的目标元素无效。

function loadDeals() {
    $.get("modules/recommendations/viewrecommendations.php",{},function(response){
        document.getElementById("dealdata").innerHTML = response;
    });
}

它会在设置innerHTML的行上抛出错误......有什么想法会发生这种情况吗?

2 个答案:

答案 0 :(得分:13)

IE在使用innerHTML替换TBODY内容时遇到问题。上面给出的jQuery工作;如果你不使用jQuery,另一种解决方案是在页面的某个地方有一个<div id='helper' style='visibility:hidden'/> - 当响应到达时,将带有周围<table>标记的值放入隐藏的div中,然后使用DOM从可见标记中删除旧内容,并从隐藏标记1中插入元素1:

var a=document.getElementById("dealdata");

while(a.firstChild!=null)
  a.removeChild(a.firstChild);

var b=document.getElementById("helper");
b.innerHTML="<table>"+this.responseText+"</table>";
while(b.tagName!="TR") {
  if(b.tagName==null)
    b=b.nextSibling;
  else
    b=b.firstChild;
}
for(;b!=null;b=b.nextSibling)
  a.appendChild(b);

答案 1 :(得分:3)

试试这个:你使用的是jquery吗?

看起来你还有一组额外的括号(我认为在,{},之间)

function loadDeals() {
    $.get("modules/recommendations/viewrecommendations.php",function(response){
        $("#dealdata").html(response);
    });
}