2017-08-17 75 views
1

是否有其他解決方案沒有Ajax我可以從其他JS功能調用js php文件?如果我用ajax js函數在php文件中調用不起作用。JS製作獲取html替代解決方案的請求

<script>$.ajax(
     url: "getSubcategorieFormUpdate.php?id=" + activeSubcategorie + "&sifra_novogradnja=<?php echo $sifra_novogradnja ?>", 
     method: "GET", 
     dataType: 'text', 
     success: function (result) { 
       document.getElementById("advertForm").innerHTML = result; 
     } 
});</script> 
+0

按F12鍵,並尋找在控制檯 –

+0

我沒有錯誤,錯誤。我只是想做什麼是不可能的。用js函數調用ajax php腳本。所以js函數不會被加載和包含。我需要其他方式來調用我的PHP腳本與JS,因爲我有js變量,我必須繼續我的稱爲PHP文件。 –

回答

2

看起來負荷是這裏的貼切功能

$("#advertForm").load("getSubcategorieFormUpdate.php?id=" + activeSubcategorie + "&sifra_novogradnja=<?php echo $sifra_novogradnja ?>l", function() { 
    alert("Load was performed."); 
}); 

,而不是把獲取和設置響應爲HTML。直接加載。

如果您收到任何錯誤,您的網址必須錯誤。由於它是一個獲取請求,請嘗試直接在瀏覽器中打開url並查看返回的服務器。從服務器

http://api.jquery.com/load/

負載數據,並把返回的HTML到匹配元素。

+0

仍然不會從我加載的php文件加載js代碼。它只加載php部分。即使我將js代碼放入回聲中,它甚至不會在Chrome中顯示Inspect。 –

+0

@MarioPetrović看看這是否有幫助https://stackoverflow.com/questions/1197575/can-scripts-be-inserted-with-innerhtml –

+0

沒有什麼幫助。仍然我的js代碼在我的php文件由js調用不起作用。我的js腳本正在工作,但是當我從js給他們打電話時他們沒有顯示。 –

0

您需要加載js作爲常規,並將所需的標題添加到php。嘗試下面的代碼。

的Javascript

var script = document.createElement("script") 
    script.type = "text/javascript"; 
    script.src = "somephp.php"; 

    script.onload = function() { 
     test(); 
    }; 

    document.getElementsByTagName("head")[0].appendChild(script); 

PHP

<?php 
    header('Content-type: text/javascript'); 
    ?> 

    function test() 
    { 
     alert("Hello"); 
    }