处理ajax失败的响应

时间:2011-02-01 21:11:18

标签: jquery php

我的错误处理没有处理这个ajax请求...刚才我的“r”是

<br />
<b>Warning</b>:
simplexml_load_string() [
    <a href='function.simplexml-load-string'>
        function.simplexml-load-string

并且它没有执行} else {甚至console.log

中的内容
success: function (r) {

    console.log(r); 
    $('.processing').addClass('hide');              
    if (r.type == 'success') {
        if (r.message.match(/approved/).length > 0) {
            triggerNotification('check', 'Payment has been accepted');
        } else {
            triggerNotification('check', r.message);
        }

        document.location = '/store/order/view?hash='+r.hash;
    } else {
        $('.button').show();

        var msg = 'Unable to run credit card: '+r.message;

        if (parseInt(r.code) > 0) {
            msg = msg+' (Error code: #'+r.code+')';
        }

        triggerNotification('x', msg);
    }
},

1 个答案:

答案 0 :(得分:0)

这是PHP错误,而不是AJAX错误。 PHP错误未设置HTTP错误标头,因此您的AJAX回调将其读作有效响应。

您似乎也在使用dataType: json,因为PHP的响应是HTML而不是JSON,r将是undefined,这就是console.log(r)失败的原因(这可能会在您的控制台中出现错误并杀死该脚本。)