jquery如何返回成功和错误等功能

时间:2013-04-01 10:10:56

标签: javascript jquery

我看过jquery代码,但我不清楚。如何使我自己的函数返回成功或错误,如下面的代码所示:

   $.ajax({
      type: "GET",
      url: "/some.xml",
      success: function()
      { /** found! **/},
      error: function(xhr, status, error) {
        if(xhr.status==404)
          { /** not found! **/}
      }
    });

2 个答案:

答案 0 :(得分:1)

$.ajax传入一个对象,该对象上有successerror属性作为函数。在函数中,它将根据结果调用successerror。这个例子可能会帮助您更好地理解。

jsFiddle

function ifTrue(bool, params) {
    if (bool)
        params.success();
    else
        params.error();
}

ifTrue(true, {
    success: function () {
        alert('success');
    },
    error: function () {
        alert('error');
    }
});

ifTrue(false, {
    success: function () {
        alert('success');
    },
    error: function () {
        alert('error');
    }
});

答案 1 :(得分:0)

对于更多选项(成功,错误,状态......),我建议使用Deferred对象。 http://api.jquery.com/category/deferred-object/

示例:

    function MyFunction(parameter){
        var def = $.Deferred();
        if(DoSomeThing()){
           def.resolve();
        }
        else{
           def.reject()
        }
        return def;
    }

使用方法: ...

MyFunction(xxx).then(function(){
// Success case
})
.fail(function(){
//Fail case
});