例, 某個store物件是長這樣的
===============================
var store=bew Ext.data.JsonStore(
...
...
proxy:{
type:'ajax',
url: .....
}
);
store.load({
scope:this,
callback:function(records,option,success){
...
...
if(success){
.....產生grid.....
}
}
});
===============================
server side:
==================
傳回一個json,
var jason={
success=....,
totalCount=....
rows=......
msg=...... <---如果有錯誤發生的話
}
==================
如果是success還好,直接做grid產生的動作
可是人生不如意,十之三四五六七八九,多少會有success=false的時候
可是如果是failed的話,要怎麼接收ms的消息?明明callback 只有三個參數啊
有的人是說用這方式來接收server response的json物件....
=========================
callback: function(records, operation, success) {
var jsonStr = Ext.JSON.decode(operation.response.responseText);
alert(jsonStr.message);
}
=======================
很不幸的,上述的程式碼是行不通的(上述的作法應該是3.x的吧?)
會出現 operation.response=null的現象
如何是好?真正的做法是:
=======================
if (!success) {
var jsonObj =store.proxy.reader.rawData;
Ext.Msg.alert('Server Failed!!', jsonObj.msg,Ext.emptyFn);
return;
}else{
....產生grid.....
}
=======================
沒有留言:
張貼留言