使用ext2的form提交表单(非AJAX方式)
http://beckrabbit.iteye.com/blog/132686 非ajax方式提交表单
- var simple = new Ext.form.FormPanel({
- url:'../userlogin., do'
- //实现非AJAX提交表单一定要加下面的两行!
- /*onSubmit: Ext.emptyFn, //onSubmit没有起作用
- submit: function() {
- //有疑问的地方
- this.getEl().dom.action='../userlogin.do';
- this.getEl().dom.submit();
- }, */
- buttons: [{
- text: '登录',
- type:'button',
- id:'login',
- handler: login
- },{
- text: '重置',
- type:'reset',
- id:'clear',
- handler: reset
- } ]
function login(){
alert('form submit!');
simple.getForm().getEl().dom.action='www.baidu.com';
simple.getForm().getEl().dom.submit();
}
-
handler如何传递参数?例如:如何向function login里传递action的值?
- 关于回调函数指定参数问题,由来已久,extjs简洁优雅完美的解决了这个问题。
createDelegate ( [Object obj ] , [Array args ] , [Boolean/Number appendArgs ] ) : Function
那么 调用
function2时传的参数被忽略,args数组参数作为function1的参数运行。 调用
function2时传的参数放在args数组前面合成一个新的数组,作为function1的参数运行。 假设 调用 function2时传的参数 为 array1 (注意要 slice 为 真正的 Array)
那么将 args 数组插入到 array1 的指定 appendArgs位置 (利用 splice( appendArgs,0 ))
然后再把最终数组 作为function1的参数运行。
- buttons: [{
text: 'Save',
type: 'button',
id: 't',
// handler: test
handler: test2.createDelegate(this,'www.baidu.com',true) //把this传进test2函数中,在函数中,也把www.baidu.com传进test2函数中
},{
text: 'Cancel'
}]
- function test2(){
alert('form submit---传url!' +this);
}
- Ext.get('action_c').on('click',action_bc.createDelegate(Ext.get('action_c'),['自定义参数在第一位'],0));
buttons: [{ |
推荐阅读
-
jquery实现ajax提交form表单的方法总结
-
FORM中使用onSubmit="return false"防止表单自动提交,以及submit和button提交表单的区别
-
Ajax提交Form表单及文件上传的实例代码
-
Jquery通过Ajax方式来提交Form表单的具体实现
-
详解javascript表单的Ajax提交插件的使用
-
Spring Cloud使用Feign实现Form表单提交的示例
-
详细分析使用AngularJS编程中提交表单的方式
-
在layui中使用form表单监听ajax异步验证注册的实例
-
聊聊Ajax提交form表单的看法和认识
-
Lavarel框架中使用ajax提交表单的方法