jQuery AJAX Post不起作用

时间:2012-04-05 16:21:58

标签: jquery ajax post

我无法弄清楚为什么以下代码不起作用。目前,php函数“alias_valid”只返回一个字符串用于测试目的,所以我没有在这里包含php函数。警报为空。

$.post(SITE_ROOT + "includes/AbstractEvent.php",{
    action:"alias_valid", 
    alias : alias},
    function(v){
        alert(v);
    });

3 个答案:

答案 0 :(得分:1)

  

如果使用jQuery.post()的请求返回错误代码,则会失败   

尝试.error()检查是否发生任何错误

语法:

// Assign handlers immediately after making the request,
// and remember the jqxhr object for this request
var jqxhr = $.post("example.php", function() {
  alert("success");
})
.success(function() { alert("second success"); })
.error(function() { alert("error"); })
.complete(function() { alert("complete"); });

More info on $.post

答案 1 :(得分:0)

$.post中没有action个参数。尝试将其连接到url的末尾。

$.post(SITE_ROOT + "includes/AbstractEvent.php/alias_valid/",{ 
    alias : alias},
    function(v){
        alert(v);
    });

但是我怀疑除非你使用的是MVC框架,否则它会起作用。或者某种请求路由调用类中的特定函数。

答案 2 :(得分:0)

我最好的猜测是你的一个变量是未定义的。确认您的代码中确实已定义SITE_ROOTalias。同时检查SITE_ROOT是否以/结尾。

测试所有启动控制台的最佳方法(按 F12 )并查看您获得的错误。如果没有,您可能会从服务器获得空响应。

根据您的示例,这是一个working jsfiddle(再次按 F12 来访问控制台中的输出)。