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的例子: functionformSubmit(){ if(form1.getForm().isValid()){ form1.getForm().submit({ waitTitle:'提示',//标题 waitMsg:'正在提交数据请稍后...',//提示信息 url:'eidtBooktype.action',method:'post',params:'booktype',success:function(form,action){ varflag=action.result.msg; window.returnValue='SUCC'; Ext.Msg.alert('提示',flag,function(){ window.close(); }); },failure:function(form,action){ varflag=action.result.msg; Ext.Msg.alert('操作',flag); } }); } } 其次是一个Ext.Ajax.request的例子: Ext.Ajax.request({ url:'deleteBooktypes.action',params:{delids:deleteids.toString()},action){ //alert(response.responseText);//返回的json值的字符串 varrespText=Ext.util.JSON.decode(form.responseText);//吧字符串变为json格式 varmsg=respText.msg; Ext.MessageBox.alert('提示',msg,function(){ bookTypeStore.reload(); }); },failure:function(response,options){ varrespText=Ext.util.JSON.decode(response.responseText);//吧字符串变为json格式 varmsg=respText.msg; Ext.MessageBox.alert('提示',function(){ bookTypeStore.reload(); }); } });
使用是的区别: 最明显就是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的一个败笔呀!!! 还有一个最值得注意的地方: form1.getForm().submit返回的值中必须包含success:true或者是failue:true 这个是最终判断执行是否成功的关键!!! 而Ext.Ajax.request则不需要该参数,只要是不抛出异常,肯定是success成功的!!! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |