就PHP而言(或者实际上是一般的Web服务器),HTML页面并不比大字符串复杂。

您可以使用PHP等语言进行所有精彩的工作 - 从数据库和Web服务中读取所有这些 - 最终目标是完全相同的基本原则:生成一串HTML *。

在Web浏览器加载之前,您的大HTML字符串不会变得比这更特别。一旦浏览器加载了页面,那么所有其他魔术就会发生 - 布局,盒子模型,DOM生成以及许多其他事情,包括 执行。

所以,你不“从PHP调用 ”,你“在输出中包含一个 函数调用”。

有很多方法可以做到这一点,但这里有一对。

仅使用PHP:

echo \'<  type=\"text/ \">\',
     \'jsfunction();\',
     \'</ >\'
;

从php模式转到直接输出模式:

<?php
    // some php stuff
?>
<  type=\"text/ \">
    jsFunction();
</ >

您不需要返回函数名称或类似的东西。首先,停止手动编写AJAX请求。你只会让自己变得困难。获取jQuery或其他优秀框架之一。

其次,了解一旦从AJAX调用收到响应,您已经将执行 代码。

这是我认为你正在用jQuery的AJAX做的一个例子

$.get(
    \'wait.php\',
    {},
    function(returnedData) {
        document.getElementById(\"txt\").innerHTML = returnedData;

        //  Ok, here\'s where you can call another function
        someOtherFunctionYouWantToCall();

        // But unless you really need to, you don\'t have do
        // We\'re already in the middle of a function execution
        // right here, so you might as well put your code here
    },
    \'text\'
);

function someOtherFunctionYouWantToCall() {
    // stuff
}

现在,如果您在将函数名称从PHP发送回AJAX调用时已经死定,那么您也可以这样做。

$.get(
    \'wait.php\',
    {},
    function(returnedData) {
        // Assumes returnedData has a   function name
        window[returnedData]();
    },
    \'text\'
);

*或JSON或 等。

收藏 打印