Extjs/Ajaxのsuccessとfailureはいつ呼び出されますか?
2148 ワード
1. Ext.form.Action.Submitの構成オプションsuccess、failure
戻りjsonのsuccess属性から判断し、successがtrueの場合success、falseの場合failure、jsonの場合success属性、failureがないため、操作が成功したかどうかを示すにはsuccess属性を返さなければならない.
[javascript] view plaincopy form.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); } });
[javascript] view plaincopy 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); } });
戻りjsonのsuccess属性から判断し、successがtrueの場合success、falseの場合failure、jsonの場合success属性、failureがないため、操作が成功したかどうかを示すにはsuccess属性を返さなければならない.
[javascript] view plaincopy
2. Ext.Ajax.request
success、failure response status , ,200 success,404 500 failure。 success 200, 。
クライアントに応答したコンテンツが何であるかにかかわらず、応答が成功すればこのsuccessが実行され、返されたコンテンツとは関係ありません.あなたが返したパラメータsuccess値に基づいて判断して別々に処理したい場合は、上のsuccessで判断処理を行わなければなりません.たとえば、次のようになります.[javascript] view plaincopy