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 相关文章推荐
Javascript 日期对象Date扩展方法
May 30 Javascript
js弹出层永远居中实现思路及代码
Nov 29 Javascript
JavaScript tab选项卡插件实例代码
Feb 23 Javascript
详解js的事件代理(委托)
Dec 22 Javascript
浅谈angularjs中响应回车事件
Apr 24 Javascript
Vue非父子组件通信详解
Jun 12 Javascript
js匿名函数使用&传参(实例)
Sep 08 Javascript
js获取html页面代码中图片地址的实现代码
Mar 05 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
Sep 29 Javascript
Vue.js 中制作自定义选择组件的代码附演示demo
Feb 28 Javascript
js实现上传按钮并显示缩略图小轮子
May 04 Javascript
Vue使用axios引起的后台session不同操作
Aug 14 Javascript
禁用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
晋城吧对DiscuzX进行的前端优化要点
2010/09/05 PHP
延长phpmyadmin登录时间的方法
2011/02/06 PHP
解析PHP留言本模块主要功能的函数说明(代码可实现)
2013/06/25 PHP
zf框架的db类select查询器join链表使用示例(zend框架)
2014/03/14 PHP
php实现encode64编码类实例
2015/03/24 PHP
php文件包含的几种方式总结
2019/09/19 PHP
php设计模式之原型模式分析【星际争霸游戏案例】
2020/03/23 PHP
PHP7 弃用功能
2021/03/09 PHP
浅谈javascript 面向对象编程
2009/10/28 Javascript
js常用数组操作方法简明总结
2014/06/20 Javascript
node.js学习总结之调式代码的方法
2014/06/25 Javascript
JavaScript实现标题栏文字轮播效果代码
2015/10/24 Javascript
Vue.js中轻松解决v-for执行出错的三个方案
2017/06/09 Javascript
利用 spin.js 生成等待效果(js 等待效果)
2017/06/25 Javascript
如何去除vue项目中的#及其ie9兼容性
2018/01/11 Javascript
vue实现模态框的通用写法推荐
2018/02/26 Javascript
JavaScript 五大常见函数
2018/03/23 Javascript
vue组件中的数据传递方法
2018/05/14 Javascript
微信小程序onLaunch异步,首页onLoad先执行?
2018/09/20 Javascript
微信小程序云开发之使用云数据库
2019/05/17 Javascript
手把手15分钟搭一个企业级脚手架
2019/09/16 Javascript
JavaScript实现多文件下载方法解析
2020/08/07 Javascript
javascript实现简单页面倒计时
2021/03/02 Javascript
python使用rabbitmq实现网络爬虫示例
2014/02/20 Python
跟老齐学Python之画圈还不简单吗?
2014/09/20 Python
python3.4 将16进制转成字符串的实例
2019/06/12 Python
使用Python将字符串转换为格式化的日期时间字符串
2019/09/01 Python
python使用梯度下降算法实现一个多线性回归
2020/03/24 Python
广告业务员岗位职责
2014/02/06 职场文书
警示教育活动总结
2014/05/05 职场文书
酒店七夕情人节活动策划方案
2014/08/24 职场文书
婚宴邀请函
2015/01/30 职场文书
小学中队活动总结
2015/05/11 职场文书
Go 语言结构实例分析
2021/07/04 Golang
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android
PostgreSQL数据库创建并使用视图以及子查询
2022/04/11 PostgreSQL