我的后台php脚本需要执行javascript。怎么样?

时间:2013-07-02 16:20:05

标签: php javascript ajax background server-side

这是我正在使用的......

一些javascript(我们称之为'apples.js')是在客户端执行的,我想在javascript中做的事情之一是使用Ajax在后台运行php脚本。这很容易。

我正在使用的php脚本基于一个带有数据字段的php页面,并在最后调用了一个js函数来保存数据。 (让我们称之为其他js文件'bananas.js')我想通过将apples.js中的数据传递给php文件来填充后台php文件的字段。我的dillema是我的php文件需要在最后的bananas.js中执行一个函数,但是如果php文件在后台运行,我认为这不会起作用。显然我必须通过onclick以外的某种方法调用bananas.js函数,但即使这样,我也不认为javascript可以在后台运行。 这是对的吗?有一种简单的方法可以解决这个问题吗?

我猜最糟糕的情况,我将不得不将bananas.js中的函数改编成apples.js并跳过PHP中间脚本。我希望我可以避免这种情况,因为我更喜欢在这个软件的现有框架内工作并保持简单(我也不是非常关注编程效率;这个软件是作为我公司私人门户网站的一部分开发的)

2 个答案:

答案 0 :(得分:0)

通常,从PHP调用JavaScript并不值得。

只需在PHP中重新实现该功能。

答案 1 :(得分:0)

为什么不在ajax方法上使用回调。

如果你正在使用jQuery ......

<强> apples.js

$.ajax({
    type: 'POST',
    data: {
        val1: 'one', 
        val2: 'two'
    },
    success: function (data) { //data is what is being returned by the .php script
        //now call your bananas.js function and pass in your data
        callBananas(data);
    },
    error: function (jqXHR) {
        console.log(jqXHR);
    }
});

<强> bananas.js

var callBananas = function(data) {
    //Do something...
}