如何制作js函数文件以及如何通过ajax调用该文件来执行该函数

时间:2017-05-20 14:03:46

标签: jquery ajax

我试图通过ajax调用文件,其中包含javascript函数。我能够获取文件的内容(当我提醒它显示该文件中写的所有内容时),但我不知道如何在文件中调用该函数。

我的代码是: 要调用ajax来运行该函数:

if($("#essentialbtn").click(function() {
    $.ajax("essentialplan.php").done(function(data) {
       alert(data);
    });
}));

文件:(名为essentialplan.php)

<script type="text/javascript">
    localStorage.setItem('essentialPlan', $('#essential').text());     
    localStorage.setItem('essentialPrice', $('#priceA').text());

    window.location.href = "http://incrediblewebpages-com.stackstaging.com/convertion%20bubble/conversion2.php"; 
</script>

2 个答案:

答案 0 :(得分:2)

将其更改为脚本文件并使用$.getScript()。请务必同时删除<script>标记。

同时删除if()

<强> essentialplan.js

localStorage.setItem('essentialPlan', $('#essential').text());     
localStorage.setItem('essentialPrice', $('#priceA').text());

window.location.href = "http://incrediblewebpages-com.stackstaging.com/convertion%20bubble/conversion2.php"; 

点击代码:

$("#essentialbtn").click(function() {
    $.getScript("essentialplan.js");
})

答案 1 :(得分:1)

首先,您需要从essentialplan.php文件中删除脚本标记,以便内容/响应数据应为:

localStorage.setItem('essentialPlan', $('#essential').text());     
localStorage.setItem('essentialPrice', $('#priceA').text());

window.location.href = "http://incrediblewebpages-com.stackstaging.com/convertion%20bubble/conversion2.php"; 

然后,您可以使用eval()

$("#essentialbtn").click(function() {
    $.ajax("essentialplan.php").done(function(data) {
       eval(data);
    });
})

或者您可以使用$.getScript()

$("#essentialbtn").click(function() {
    $.getScript("essentialplan.php").done(function(script, textStatus) {
        // do whatever you want to do
    });
});

P.S:你不需要if()来设置JQuery点击事件 P.S(2):$.getScript函数的回调是可选的

相关问题