如何检查jquery ajax发布成功与否?

时间:2015-12-03 08:53:57

标签: jquery ajax

我有以下jQuery代码,但它没有运行警报。

谁能告诉我什么是错的?

jQuery('.list_action .edit').click(function(){      
    var answerId = jQuery(this).parent().next('#answer_id').val();
    jQuery.ajax({
        type: 'POST',
        url : 'form.php',
        data: {'answer_id':answerId},
        dataType : 'json',
    }).done(function(result){
        if(result == true){
            alert('success');
        }else{
            alert('faild');
        }                       
    }); 
 });

在文件php我有代码

echo $response = json_encode($answersAjax->getData());

非常感谢!

1 个答案:

答案 0 :(得分:2)

尝试通过包含" error:function"来查看服务器是否返回了错误。在电话中:

var data = "answer_id="+answer_id;
req = $.ajax({
    type: 'POST',
    encoding:"UTF-8",
    url: 'index.php',
    cache: false,
    data: data,
    error: function (xhr, ajaxOptions, thrownError) {
        //alert(xhr.responseText);
        alert("Error: "+thrownError);
    },
    xhr: function () {
        var xhr = new window.XMLHttpRequest();
        return xhr;
    },
    beforeSend: function () {
        //do sth

    },
    complete: function () {
        //do sth
    },
    success: function (response) {

         alert("success");

    }
});

如果您有多个变量,请使用

var data = "var1="+var1+"&var2="+var2+"&var3="+var3

如果您仍然无法获得任何回报,那么您的网址不正确。您是否尝试在服务器代码中输出一些文本,以查看是否收到了请求? E.g:

echo "answer id=".$_POST['answer_id'];

如果你至少看不到"回答id ="那么你知道这个网址肯定不正确!