簡體   English   中英

在Ajax之后運行JavaScript

[英]Run JavaScript after Ajax

我有一個使用此功能的HTML,用於使用Ajax加載另一個PHP:

   function LoadContent(n,func)
{           
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange=function()
    {
        if (xmlhttp.readyState== 4 && xmlhttp.status == 200)
        {
            document.getElementById("div-content").innerHTML=xmlhttp.responseText;
        if(typeof(func)==='undefined')
                {
                // nothing
                }
            else
                {
                eval(func);
                }

        }
    }
    xmlhttp.open("GET",n,true);
    xmlhttp.send();
}

到目前為止,一切正常。 要加載的PHP會生成一個HTML,其中包含一個

<script> 
function foo() { 
alert('hello'); 
} 
</script>

原始HTML使用javascript:LoadContent('file.php','foo()')調用加載程序,但未調用foo()。 eval()行在Chrome中顯示“無此功能”。

在Ajax加載之后,我將如何管理它,將執行駐留在加載的html中的JavaScript函數?

改為這樣做:

javascript:LoadContent('newstandby.php',foo)

由於foo是一個函數,它將被作為回調調用,因此它作為函數傳遞,而不是result( foo()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM