1.Ext3跨域问题需要用ScriptTagProxy解决,官网查询例子如下
2.如果是增删改则如下,JsonStore不定义数据格式
3.可以用chrome看到跨域访问的原理:服务端传送过来的不是json而是js文件
4.关于load的回调处理
new Ext.data.JsonStore({
id: 'mytableUpdateStore',
root : 'code',
fields : [{name : 'code'}],
autoDestroy : true,
proxy: new Ext.data.ScriptTagProxy({
url: 'http://localhost:8080/server/mytable/update.do'
})
});
function doAfterEdit(event) {
Ext.StoreMgr.get('mytableUpdateStore').load({
params : {
uuid : event.record.get('uuid'),
field : encodeURI(event.field),
newValue : encodeURI(event.value)
},
callback : function(r, options, success) {
if(success) {
event.record.commit();
}
else {
Ext.MessageBox.alert('提示', '更新错误,请联系管理员!', null);
}
}
});
}
原因正是因为返回来的不再是那个成功的code-200,而是下面的文段:
所以它执行了success==false的方法