Extjs/Ajax中的success和failure 何时调用?

来源:互联网 发布:秀萝捏脸数据 编辑:程序博客网 时间:2024/05/19 14:51

1. Ext.form.Action.Submit的配置选项success、failure

根据返回json中success属性判断的,如果success为true,则success,false则failure,如果json中无success属性,failure,故要提示操作是否成功,必须要返回success属性。

orm.getForm().submit({                          // 登录期间显示的文本                          loadMask: myMask.show(),                          // submit时指向的地址                          url: "userAction!login",                          success: function(form, action) {                              window.location.href = "home.jsp";                          },                          failure: function(form, action) {                              myMask.hide();                              Ext.Msg.alert("错误", action.result.info);                          }  }); 

 

2. Ext.Ajax.request的配置选项success、failure

根据response的status属性,即状态码决定的,200则为success,404或500等则为failure。这里的success是表示你的服务器响应状态值为200,即表示服务器成功响应。不管你响应给客户端的内容是什么,只要响应成功就会执行这个success,跟你返回的内容无关。至于你想根据你返回的参数success值进行判断分别处理,你得在上面的success中进行判断处理。比如像这样:

Ext.Ajax.request({                url:'admin!select',                method:'post',                waitMsg:'数据加载中,请稍后....',                success:function(response,opts){                    var obj=Ext.decode(response.responseText);                    if(obj.success == "true") {//如果你处理的JSON串中true不是字符串,就obj.success == true                       //你后台返回success 为 false时执行的代码                  } else {                       //你后台返回success 为 false时执行的代码                  }              },                failure:function(response,opts){                    var obj=Ext.decode(response.responseText);                    alert(obj.result);                                    }  });


0 0
原创粉丝点击