AJAX导致Div消失

| 使用AJAX调用CGI脚本,该脚本将打开文件并以DIV格式将其打印出来。 这在我拥有的测试页上可以正常工作,但由于某种原因在另一页上,它将内容打印到DIV中,然后清除DIV。使用alert(),我可以看到readystate从1,2,3,4,1,4变为,然后第二次在其4之后div内容被清除。实际上,它两次调用了updatepage()函数,但第二次DIV被清除。当我检入Firebug时,innerHTML从具有内容的内容更改为具有\“ \”的内容。 在我的测试页中,即使发生了相同的readystate序列,也不会发生这种情况。 这是我遇到问题的代码片段:
self.xmlHttpReq.open(\'POST\', cgiScript, true);
self.xmlHttpReq.setRequestHeader(\'Content-Type\', \'application/x-www-form-urlencoded\');
self.xmlHttpReq.onreadystatechange = function()
 {
  if (self.xmlHttpReq.readyState == 4)
   {
    updatepage(self.xmlHttpReq.responseText);
   }
 }


function updatepage(str) 
   {
    document.getElementById(\"result\").innerHTML = str;
   }
编辑!!!!!!!!!!!!!!!!! 好的,我认为我发现了什么问题,但是我不确定为什么。 锚html href = \“ \”引起了问题。一旦删除它,div就会保持填充。 这将导致DIV在打印后消失
        <div class=\"menulinkboxes\" id=\"listdiv\">
        <a class=\"mainmenulinks\"
        onclick=\'openFile(\"list,autos\")\'
        href=\"\">auto-list</a>
        </div>
用href = \“#\”替换href = \“ \”修复了它。 #表示此页面
        <div class=\"menulinkboxes\" id=\"listdiv\">
        <a class=\"mainmenulinks\"
        onclick=\'openFile(\"list,autos\")\'
        >auto-list</a>
        </div>
    
已邀请:
我知道您已经回答了这个问题,但只是以为我会迅速扩大您的回答。
href=\"#\"
\“#\”告诉浏览器寻找锚标记,因此,如果之后将#符号留空,它将自动锚定。 另外,我发现innerHTML可能会引起问题,并且DOM方法非常方便。为了获取该值,它应该可以正常工作。只是想提一下。     

要回复问题请先登录注册