Ext6种异步提交方式
ExtJS的几种提交方式(6种)最近做的项目都是用的ExtJS框架,随着项目做的越多,接解到的ExtJS的控件和功能也越来越多。下面来总结一下ExtJS中的几种数据提交方式: 1.表单Ajax提交(常用) 表单Ajax提交是我目前用的最多的一种,直接使用form.submit(),它会把form面板上的所有控件的值全部传递后台。Ajax的特点之一就是不刷新页面,提高用户体验。后台必须返回JSON格式,success返回true则执行success:function(form,action)里面的代码,返回false则执行failure:function(form,action)中的代码。 var panel222=new Ext.form.FormPanel({ ……//form属性或配置项 buttons:[{ }] }); 2. 普通Ajax提交 这种提交方式可以设置传递到后台的参数,如果不想把面板上的控件全部传递到后台,就可以用这种提交方式。需要注意的是,不管后台返回的信息是成功或失败都要执行success:function…,所以要在success方法里面判断一下返回的字符串,如果返回success:true,说明操作成功,返回success:false,说明操作失败。Failure方法是访问不到后台时执行的方法。 var formBasisContent=new Ext.form.FormPanel({ ……//form属性或配置项 buttons:[{ }] }); 以上返回函数也可以这样写: //指定Ajax请求的回调函数,该函数不管是调用成功或失败,都会执行。 callback: function(options,success,response) { if(success){ MsgInfo(response.responseText); } } 3.通过Ext.data.Connection提交数据 这种提交方式在grid中删除行时用到过。此提交方式没有限制返回的数据格式,不过我的项目后台返回的一直都是JSON格式数据,其他格式没有试过。 var conn=newExt.data.Connection(); conn.request({ }) 以上3种提交方式是我目前做项目时用到过的。下面是查资料时从网上看到的ExtJS提交方式。 4.普通方式提交 适合一次操作页面,即提交后跳转到另外一个页面。 var form1= new Ext.FormPanel({ buttons:[{ //只用指定TextField的id或者name属性,服务器端Form中就能取到表单的数据 }] }); 5.关于hmtl表单和extJS表单的Ajax提交方式之一 这种方式将为ext的ajax指定一个html表单,使用这种方式,不需要将待传递的参数进行封装(没有params属性,表单全部传递到后台) function saveUser_ajaxSubmit2(){ alert(o.msg); }); } 6.关于hmtl表单和extJS表单的Ajax提交方式之二 这种方式将html的表单转化为ext的表单进行异步提交,使用这种方式,需要定义好html的表单(同样不能指定传递参数) function saveUser_ajaxSubmit4() { method :'post', success: function(form,action){ }, failure : function(form,action){ alert(action.result.msg); } }); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |