javascript - 使用ajax调用php函数时遇到问题

标签 javascript php jquery ajax

在客户端(js)我使用此脚本

    jQuery.ajax({
    type: "GET",
    url: "editold.php",
    data: "call=generateCode",
    success: function (response) {
        alert("Succesful getting php file");
    },
    error: function (response) {
         alert("Error getting php file");
    }
});

在服务器端(php)我使用此代码:

<?php 



if($_SERVER['REQUEST_METHOD']=="GET") {
echo '<script type="text/javascript">' . 'alert(" ' . 'hey' . '");' . '</script>'; 
$function = $_GET['call'];

    if(function_exists($function)) {        
        call_user_func($function);
    } 
    else {
        echo 'Function Not Exists!!';
    }
}

function generateCode() {
echo '<script type="text/javascript">' . 'alert(" ' . 'hey' . '");' . '</script>'; 
}
?>    

虽然我确实收到一条警报,说我的成功功能警报意味着该文件 已成功加载,我似乎没有让最终的生成代码功能正常工作。(我没有收到第二个警报。)

我尝试了很多方法,但似乎没有任何效果。

我该怎么办?..

最佳答案

这应该可以做到:

jQuery.ajax({
    type: "GET",
    url: "editold.php",
    data: {call: "generateCode"}, // <-- This one is changed into an object
    success: function (response) {
        alert("Succesful getting php file");
        $('body').append(response); // <-- Append the ajax response to the page body
    },
    error: function (response) {
        alert("Error getting php file");
    }
});

如果没有,请尝试在 PHP 文件中执行 var_dump($_GET); 操作。

关于javascript - 使用ajax调用php函数时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18949714/

相关文章:

javascript - Apache Cordova 3 插件不工作

javascript - javascript 正则表达式中的 d 标志是什么意思?

javascript - 在 Express 中提供目录之前进行身份验证

php - 阻止上传php脚本被执行

php - 如何在 jQuery 变量中转义 JavaScript?

javascript - 为用户添加 channel 权限

php - 如何使用 Symfony 上的 Doctrine MongoDB 文档的策略增量设置 Id 的起始值?

php - 插入数据后选项刷新

jquery - 如何使用 jQuery 将 "title"属性转换为鼠标悬停事件?

javascript - 返回 false 不会阻止表单提交