ExtJS中Ext.Ajax.request与form1.getForm().submit的根本区别
相同点:都属于Ajax提交方式! 不同点:Ext.Ajax.request是Ext.data.connection的一个实例 form1.getForm().submit是BasicForm的一个实现方式 使用上的区别: 1.form1.getForm().submit常用在表单提交的时候,就是说要提交页面数据,比如新增和修改数据页面 2.Ext.Ajax.request常用在根据参数提交的时候,比如删除,我们把页面选中的ID进行遍历,封装在一个Array中,作为一个参数做Ajax的提交 例子: 首先是form1.getForm().submit的例子: function formSubmit(){ 其次是一个Ext.Ajax.request的例子: Ext.Ajax.request({ 使用是的区别: 最明显就是success和failure时候function的参数啦! Ext.Ajax.request的function(response,options),option非常有用,用response.responseText获得返回参数,注意这个地方的response参数可以换成action form1.getForm().submit的function(form, action),action很有用,用action.result.msg获得返回值 还有个最明显区别是Ext.Ajax.request不可以用waitMsg,真是Ext的一个败笔呀!!
if (form1.getForm().isValid()) {
form1.getForm().submit({
waitTitle : '提示',//标题
waitMsg : '正在提交数据请稍后...',//提示信息
url : 'eidtBooktype.action',
method : 'post',
params : 'booktype',
success : function(form, action) {
var flag=action.result.msg;
window.returnValue='SUCC';
Ext.Msg.alert('提示',flag,function(){
window.close();
});
},
failure : function(form,action) {
var flag=action.result.msg;
Ext.Msg.alert('操作', flag);
}
});
}
}
url : 'deleteBooktypes.action',
method : 'post',
params : {delids:deleteids.toString()},
success : function(form,action) {
//alert(response.responseText); //返回的json值的字符串
var respText = Ext.util.JSON.decode(form.responseText); //把字符串变为json格式
var msg=respText.msg;
Ext.MessageBox.alert('提示',msg,function(){
bookTypeStore.reload();
});
},
failure : function(response,options) {
var respText = Ext.util.JSON.decode(response.responseText); //把字符串变为json格式
var msg=respText.msg;
Ext.MessageBox.alert('提示',msg,function(){
bookTypeStore.reload();
});
}
});