extJS中常用的4种Ajax异步提交方式


Posted in Javascript onMarch 07, 2014

/**

* 第一种Ajax提交方式 
* 这种方式需要直接使用ext Ajax方法进行提交 
* 使用这种方式,需要将待传递的参数进行封装 
* @return 
*/ 
function saveUser_ajaxSubmit1() { 
Ext.Ajax.request( { 
url : 'user_save.action', 
method : 'post', 
params : { 
userName : document.getElementById('userName').value, 
password : document.getElementById('password').value 
}, 
success : function(response, options) { 
var o = Ext.util.JSON.decode(response.responseText); 
alert(o.msg); 
}, 
failure : function() { 
} 
}); 
} 
/** 
* 第二种Ajax提交方式 
* 这种方式将为ext的ajax指定一个html表单 
* 使用这种方式,不需要将待传递的参数进行封装 
* 
* @return 
*/ 
function saveUser_ajaxSubmit2() { 
Ext.Ajax.request( { 
url : 'user_save.action', 
method : 'post', 
form : 'userForm', // 指定表单 
success : function(response, options) { 
var o = Ext.util.JSON.decode(response.responseText); 
alert(o.msg); 
}, 
failure : function() { 
} 
}); 
} 
/** 
* 第三种Ajax提交方式 
* 这种方式将为ext的自己的表单进行提交 
* 使用这种方式,需要使用ext自己的textField组件 
* 
* @return 
*/ 
function saveUser_ajaxSubmit3() { 
// 定义表单 
var formPanel = new Ext.FormPanel( { 
labelWidth : 75, 
frame : true, 
bodyStyle : 'padding:5px 5px 0', 
width : 350, 
defaults : { 
width : 230 
}, 
defaultType : 'textfield', 
items : [ { 
fieldLabel : '用户名', 
name : 'userName', 
allowBlank : false 
}, { 
fieldLabel : '密 码', 
name : 'password' 
} ] 
}); 
// 定义窗口 
var win = new Ext.Window( { 
title : '添加用户', 
layout : 'fit', 
width : 500, 
height : 300, 
closeAction : 'close', 
closable : false, 
plain : true, 
items : formPanel, 
buttons : [ { 
text : '确定', 
handler : function() { 
var form = formPanel.getForm(); 
var userName = form.findField('userName').getValue().trim(); 
var password = form.findField('password').getValue().trim(); 
if (!userName) { 
alert('用户名不能为空'); 
return; 
} 
if (!password) { 
alert('密码不能为空'); 
return; 
} 
form.submit( { 
waitTitle : '请稍后...', 
waitMsg : '正在保存用户信息,请稍后...', 
url : 'user_save.action', 
method : 'post', 
success : function(form, action) { 
alert(action.result.msg); 
}, 
failure : function(form, action) { 
alert(action.result.msg); 
} 
}); 
} 
}, { 
text : '取消', 
handler : function() { 
win.close(); 
} 
} ] 
}); 
win.show(); 
} 
/** 
* 第四种Ajax提交方式 
* 这种方式将html的表单转化为ext的表单进行异步提交 
* 使用这种方式,需要定义好html的表单 
* 
* @return 
*/ 
function saveUser_ajaxSubmit4() { 
new Ext.form.BasicForm('userForm').submit( { 
waitTitle : '请稍后...', 
waitMsg : '正在保存用户信息,请稍后...', 
url : 'user_save.action', 
method : 'post', 
success : function(form, action) { 
alert(action.result.msg); 
}, 
failure : function(form, action) { 
alert(action.result.msg); 
} 
}); 
}
Javascript 相关文章推荐
分析Node.js connect ECONNREFUSED错误
Apr 09 Javascript
jquery easyui combox一些实用的小方法
Dec 25 Javascript
javascript中的self和this用法小结
Feb 08 Javascript
JavaScript设置body高度为浏览器高度的方法
Feb 09 Javascript
学习Angular中作用域需要注意的坑
Aug 17 Javascript
js实现点击切换checkbox背景图片的简单实例
May 08 Javascript
微信小程序 上传头像的实例详解
Oct 27 Javascript
JavaScript去掉数组重复项的方法分析【测试可用】
Jul 19 Javascript
ES6小技巧之代替lodash
Jun 07 Javascript
vue+导航锚点联动-滚动监听和点击平滑滚动跳转实例
Nov 13 Javascript
javascript中闭包closure的深入讲解
Mar 03 Javascript
Vue-router编程式导航的两种实现代码
Mar 04 Vue.js
禁用JavaScript控制台调试的方法
Mar 07 #Javascript
jquery日历控件实现方法分享
Mar 07 #Javascript
jquery.form.js用法之清空form的方法
Mar 07 #Javascript
jquery设置按钮停顿3秒不可用
Mar 07 #Javascript
jquery 实现两级导航菜单附效果图
Mar 07 #Javascript
document.addEventListener使用介绍
Mar 07 #Javascript
开发中可能会用到的jQuery小技巧
Mar 07 #Javascript
You might like
浅析php header 跳转
2013/06/17 PHP
PHP_Cooikes不同页面无法传递的解决方法
2014/03/07 PHP
在win系统安装配置 Memcached for PHP 5.3 图文教程
2015/03/03 PHP
详解PHP中的Traits
2015/07/29 PHP
PHP socket 模拟POST 请求实例代码
2016/07/18 PHP
JavaScript实现删除电脑的关机键
2016/07/26 PHP
针对多用户实现头像上传功能PHP代码 适用于登陆页面制作
2016/08/17 PHP
thinkPHP中验证码的简单实现方法
2016/12/05 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
2017/02/05 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
基于jquery的$.ajax async使用
2011/10/19 Javascript
JavaScript二维数组实现的省市联动菜单
2014/05/08 Javascript
node.js WEB开发中图片验证码的实现方法
2014/06/03 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
整理Javascript函数学习笔记
2015/12/01 Javascript
javascript图片切换综合实例(循环切换、顺序切换)
2016/01/13 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
Vue.js实战之利用vue-router实现跳转页面
2017/04/01 Javascript
浅谈Vue CLI 3结合Lerna进行UI框架设计
2019/04/14 Javascript
js正则匹配多个全部数据问题
2019/12/20 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
python实现清屏的方法
2015/04/30 Python
一键搞定python连接mysql驱动有关问题(windows版本)
2016/04/23 Python
解决python3.5 正常安装 却不能直接使用Tkinter包的问题
2019/02/22 Python
浅谈Python中函数的定义及其调用方法
2019/07/19 Python
python实现录音功能(可随时停止录音)
2020/10/26 Python
教你如何一步一步用Canvas写一个贪吃蛇
2018/10/22 HTML / CSS
建筑施工实习自我鉴定
2013/09/19 职场文书
商务日语专业毕业生求职信
2013/10/26 职场文书
4s客服专员岗位职责
2013/12/01 职场文书
2014年元旦感言
2014/03/06 职场文书
个人作风建设剖析材料
2014/10/11 职场文书
2014年作风建设剖析材料
2014/10/23 职场文书
法制教育主题班会
2015/08/13 职场文书
java objectUtils 使用可能会出现的问题
2022/02/28 Java/Android
「月刊Action」2022年5月号封面公开
2022/03/21 日漫