使用AJAX調用CGI腳本,該腳本打開文件並將其打印在DIV中。AJAX結果在Div消失
這工作正常,我有一個測試頁,但由於某種原因,在另一個頁面它將打印內容到DIV,然後將清除DIV。使用alert()我可以看到readystate從1,2,3,4,1,4開始變化,然後在第4次後,div內容清除。它實際上調用了updatepage()函數兩次,但第二次DIV清除。當我檢查螢火蟲時,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;
}
編輯!!!!!!!!!!!!!!!!!
好吧我想我發現了什麼是錯的,但我不知道爲什麼。
在anchor html href =「」引起了問題。一旦我將它移除,div仍保持填充狀態。
這將導致DIV到打印
<div class="menulinkboxes" id="listdiv">
<a class="mainmenulinks"
onclick='openFile("list,autos")'
href="">auto-list</a>
</div>
更換HREF後dissapear = 「」 與HREF = 「#」 固定它。 #意思是這個頁面
<div class="menulinkboxes" id="listdiv">
<a class="mainmenulinks"
onclick='openFile("list,autos")'
>auto-list</a>
</div>
而爲了記錄,當我遇到你的問題時,我正在研究這個確切的問題:)因此,2個月的復活:) – Xiphos 2011-07-19 19:41:54