2011-07-21 59 views
0

我有一個主要的HTML文件,我使用AJAX調用另一個PHP文件在同一目錄中。關於結合AJAX,PHP和JavaScript

在那個php文件裏,我調用了一些外部的Javascript函數。但我的JavaScript函數不起作用。這不可能嗎?

我在我的Web瀏覽器中看到生成的源代碼,這是正常的。如果我使用php文件(不使用ajax)調用這些函數,那麼我的函數正在工作,並且生成的源與之前的情況相同。請幫幫我。

在我的HTML文件,我用ajax如下:

xmlhttp.open("GET","end_location_drop_down.php?q="+str,true); 
xmlhttp.send(); 

在我的PHP文件的功能如下,

<?php 

echo '<script type="text/javascript" src="../js/pointing.js"></script>'; //external script 

    $btn8="'btn8'"; 
    $q=$_GET["q"]; 
     echo '<script type="text/javascript"> 
    nextpoint('.$at_id.'); //$at_id mean a variable,nextpoint() is my java script function 
    </script>'; 
?> 
在我的JavaScript功能

有一些影像互換functions.they可以調用由nextpoint()。但它沒有奏效。

+1

如果你用AJAX調用它,它不會在瀏覽器中運行,所以javascript有什麼用途?你的問題有點不清楚 –

回答

0

只有當您直接在瀏覽器中加載頁面時,纔會執行JavaScript函數,因爲您的瀏覽器是解釋並執行JavaScript代碼的瀏覽器。但是,當JavaScript代碼位於不同的頁面中並且正在通過AJAX調用頁面時,在將ajax響應發回給您之前,沒有瀏覽器可以執行JavaScript代碼。所以它不會工作。

0

JavaScript必須在瀏覽器中執行,因此您必須將該腳本插入到當前文檔的DOM中。嘗試將ajax調用的結果插入到DOM中。