我有以下設置:一個Javascript文件(包含一個Ajax將放入一個新的Div的谷歌可視化函數)和一個vbscript文件,其中包含Ajax調用的實現函數,該函數將谷歌可視化javascript寫入標籤。Javascript,可以檢查HTML中是否存在函數<script>標記?
在JavaScript文件中的Ajax調用中,我將Ajax調用的內容放入一個新的div中,並將其附加到容器div中。然後我調用其中一個google javascript函數,這是Ajax調用添加到html中的新內容。
如果我在google javascript函數調用之前有alert或setTimeOut(),它就會起作用。如果我只是立即調用它沒有的功能。因此,在新添加Ajax的JavaScript代碼可以被識別之前,似乎有一些延遲。
有沒有優雅的方式來調用沒有超時的功能?我編寫了一個while循環來保持循環,直到找到新的附加節點,但函數調用仍然無法識別。
function ProcessAjaxCall(DivID, ResponseText)
{
var NewDiv = document.createElement("div");
NewDiv.id = "myscript";
NewDiv.innerHTML = ResponseText;
document.getElementById(DivID).appendChild(NewDiv);
//alert('Function below only works when this outputs');
MyGoogleJSFunction('Arg');
}
因此,MyGoogleJSFunction是通過Ajax調用編寫的代碼的一部分,它位於NewDiv中。
嘗試使用像jQuery這樣的框架。這有一個使用Ajax的回調函數。所以你可以說:`onSuccess();` – Marnix 2011-01-20 12:13:32