如何确定jquery ajax返回值或null

时间:2014-09-30 06:39:52

标签: javascript jquery ajax json

我正在使用jquery发布ajax请求来执行某些操作。页面submit.php返回json值,有时如果发生致命错误则返回任何值。

我无法确定ajax返回值。那怎么可能呢。

以下是我使用的代码: -

$.post( 'submitVoice.php', $('#frmVerify').serialize(), function( data ) {

   //some code

}, 'json');

感谢。

3 个答案:

答案 0 :(得分:1)

而是使用 ajax调用,该调用具有成功和错误回调,如下所示:

$.ajax({ 
    url : 'submitVoice.php' ,  
    data: $('#frmVerify').serialize() ,
    type: 'POST',
    dataType :'JSON',
    error: function() {
        alert("error"); 
    },
    success: function(data) {
        alert(data);    
    }
});

$.post是将$.ajax用于POST请求的简便方式,因此无差异。

如果您需要一些高级配置,通常最好使用

$.ajax

参见参考here.

答案 1 :(得分:1)

您可以在.done来电后在链中添加.fail.then处理程序(或$.post):

$.post(...)
 .done(function(data, testStatus, jqXHR)         { /* use data here */ })
 .fail(function(jqXHR, textStatus, errorThrown ) { /* error handling here */ });

请注意,在任何情况下都不能return给调用者一个值。如果您需要这样做,请返回$.post的结果。

答案 2 :(得分:0)

您可以使用错误回调来了解确切的错误。

$.post('wrong.html', {}, function(data) { })
.fail(function(xhr) { alert('Internal Server Error'); console.log(xhr)});

FIDDLE