2013-03-06 122 views
1

我从另一个工作复制了这个ajax调用,我不知道为什么它不成功。这里是代码:jquery ajax php电话不能正常工作

$.ajax({ 
    type: "POST", 
    url: "addTune.php", 
    data: { 
     database: setlist, 
     name: tune, 
     orderno: orderno, 
     midi: midi 
    }, 
    error: function (e) { 
     alert("The PHP Call failed! hmmm"); 
     alert(e.status); 
    }, 
    success: function (response) { 
     alert(response); 
    } 
}); 

我每次都得到错误函数。是否有任何错字或其他愚蠢的错误?

编辑:努力追逐的误差:

$.ajax({ 

       type: "POST", 
       url: 'addTune.php', 
       data: {database : setlist, name : tune, orderno : orderno, midi : midi}, 
       error: function(e){ 
        alert("The PHP Call failed! hmmm"); 
        alert(e.status); 
       $.ajaxSetup({ 
        "error": function(jqXHR, status, thrownError) { 
         alert('error'); 
         var responseText = jQuery.parseJSON(jqXHR.responseText); 
         console.log(responseText); 
        } 
        }); 
       }, 
       success: function(response){ 
        alert(response); 

       } 



      }); 


     }); 

更新:我只是能够添加一行命令行。我有什么想法可以尝试进一步缩小这个范围?

+1

你会得到什么错误? – Marcus 2013-03-06 17:45:55

+0

什么是'e.status'? – 2013-03-06 17:46:02

+0

因为ajax调用失败,你得到的错误函数,它不是一个JavaScript问题。打开萤火虫或任何东西,看看请求/响应。 – Galen 2013-03-06 17:47:25

回答

0

我不是专业人士,但也许使用单引号而不是双引号?因为我工作的一个项目中我也有做的AJAX调用和我使用单引号

我只是暗示的东西,在这个

+1

你可以使用任何 – Galen 2013-03-06 17:58:45

+0

两种都没有改变......谢谢 – 2013-03-06 22:38:53

0

不是真的好,如果你进入了错误回调,那么你在你打电话的页面有错误,而不是使用js代码。检查是否达到了php页面。如果是检查php代码是否返回有效结果。

来自jquery DOCS。

错误

类型:Function(jqXHR jqXHR,字符串textStatus,字符串errorThrown)甲 函数如果请求失败被调用。函数接收 三个参数:jqXHR(jQuery中1.4.x中,XMLHttpRequest的)对象, 串描述错误的发生的类型和任选的 异常对象,如果一个发生。第二个 参数的可能值(除了空值)是“超时”,“错误”,“中止”和“parsererror” 。发生HTTP错误时,errorThrown会收到HTTP状态的 文本部分,例如“未找到”或“内部 服务器错误”。从jQuery 1.5开始,错误设置可以接受函数的数组 。每个函数都会依次调用。注意:此处理程序 未被调用用于跨域脚本和JSONP请求。这是一个 Ajax事件。

+0

我曾尝试和实现这个,但函数变量没有显示任何东西。我会发布我在OP中所做的 – 2013-03-06 20:48:29