`
忧里修斯
  • 浏览: 436422 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

将Ext表单的数据封装成对象

EXT 
阅读更多
/**
 * 前台表单数据的封装,自动将一个表单中的数据封装成一个js对象obj {}
 * 说明:
 * 1、对单选按钮radio,值为选中的按钮的boxLabel
 * 2、对组合框combo,值为选中的值
 * 3、对复选框checkbox,值为选中的框的boxLabel,多项以","分隔组成字符串
 * @param 表单对象
 * @author 忧里修斯
 */
Ext.namespace('Ext.ux');

Ext.dream = {
	getObjFromForm : function(form) {

		fields = form.getForm().items;
		var obj = {};
		var flag = true;// 特殊标记
		var checkboxValue = [];//保存复选框中的值
		var checkBoxName;//复选框对应字段名称

		for (var i = 0; i < fields.length; i++) {
			// 对应一个表单字段
			var field = fields.itemAt(i);
			var value = field.getValue();// 字段值
			var xtype = field.getXType();// 表单域类型

			if (xtype == 'radio') {// 单选处理
				if (flag) {
					if (value) {
						value = field.boxLabel;
						flag = false;
						obj[field.name] = value;
					}
				}

			} else if (xtype == 'combo') {
				var index = field.store.find(field.valueField, value);// 根据属性名和值查找记录的位置
				if (index != -1) {
					var selItem = field.store.getAt(index);
					value = selItem.get(field.valueField);
					obj[field.name] = value;
				}
			} else if(xtype == 'checkbox'){
				if(value){//若选中
					checkBoxName = field.name;
					checkboxValue.push(field.boxLabel)
				}
			}else{//其他类型
				obj[field.name] = value;
			}
		}
		obj[checkBoxName] = checkboxValue;

		return obj;
	}
}
0
0
分享到:
评论

相关推荐

    ext_表单提交_数据校验

    - `Ext.form.Action`:封装了更多高级功能,如数据校验、错误处理等,适用于复杂的表单提交场景。 总之,Ext JS的表单组件及其数据校验功能,为Web应用开发提供了强大且灵活的工具集,使得创建高质量的用户界面变...

    ext2 grid 封装 (包含增删改查 导入导出等操作)

    标题 "ext2 grid 封装 (包含增删改查 导入导出等操作)" 暗示了这是一个关于ExtJS 2.x版本中Grid组件的封装实践,该封装集成了基本的数据操作功能,如添加(Add)、删除(Delete)、修改(Modify)和查询(Query)...

    EXT提交表单,ASP.NET

    3. **返回响应**:将处理结果封装成JSON或其他格式,通过Response对象返回到前端。EXTJS的提交回调函数可以解析这个响应,根据结果更新界面或者给出用户反馈。 结合示例代码,我们可以有以下结构: EXTJS部分: ``...

    Ext2.0 中文文档

    EXT的核心是Element对象,它封装了DOM元素操作,提供了诸如选择、遍历、样式设置、事件处理等一系列功能。Element对象是EXT处理页面DOM结构的基础,通过它可以方便地操作页面上的任何元素。例如,EXT提供了一种简便...

    Ext4+SpringMVC实例Demo源码

    SpringMVC可以配合MyBatis或JPA等持久层框架进行数据库操作,开发者可能编写了DAO(数据访问对象)来封装SQL查询。 8. **配置文件**:项目中可能包含SpringMVC的配置文件(如`spring-servlet.xml`),定义了bean、...

    ext2.0

    总结来说,EXT 2.0 在前后台交互方面提供了强大的工具和机制,包括 CRUD 面板的封装、表单组件的创建、数据网格的展示以及与后台的 AJAX 通信。这些功能使得开发者可以高效地构建出交互性强、用户体验良好的 Web ...

    EXT登陆系统,感受ext的强大,希望大家好好学习ext,用这个开发的公司还是不少的

    在登录场景中,当用户点击登录按钮后,EXT会将输入的用户名和密码封装成数据对象,通过数据代理发送到服务器进行验证。服务器返回验证结果后,EXT可以动态更新界面,显示登录成功或失败的信息。 EXT的布局管理器则...

    ext PPT,EXT 教程,EXT 中文帮助手册,EXT 中文手册,ext_教程(入门到精通),Ext技术程序文档大全.

    通过阅读这本手册,开发者可以了解到EXT的核心组件,如Grid(表格)、Panel(面板)、Form(表单)等,以及如何利用EXT的数据模型和Store进行数据管理。 2. **EXT 教程**:这些教程可能是按照逐步教学的方式,帮助...

    ext几个实例

    在EXTJS中,Ext.AJAX和Ext.FormPanel是两个核心组件,它们分别用于异步与服务器进行数据交互和构建用户界面表单。本文将详细介绍如何使用这两个组件构建一个完整的登录案例,包括与MySQL数据库的交互。 **1. Ext....

    Ext2.0 与后台数据的交互

    2. **AJAX请求**:当用户提交表单时,EXT2.0的FormPanel会封装所有数据,并通过AjaxProxy发送一个POST请求到服务器端。请求中包含用户名和密码,这些数据会被编码并放在请求体中。 3. **服务器处理**:后端服务器...

    ext学习文档

    - **完成表单**: 展示了如何将表单字段组合成完整的表单。 #### 15. 为一个表单填充或提交数据 - **让我们开始吧**: 提供了一个简单的示例,展示了如何填充或提交表单数据。 - **读取我们的数据**: 介绍了如何读取...

    ext-base.js

    它的主要特点是提供了一套完善的组件模型,包括各种UI控件如表格、树形视图、菜单、窗口、表单等,以及强大的数据绑定机制。EXT框架使得开发者能够创建出具有桌面应用般体验的Web应用,且其响应式设计支持在多种设备...

    ext 3.2源码

    5. **Ajax通信**:EXT 3.2通过`Ext.Ajax`对象封装了Ajax请求,提供了一套简单易用的API。通过源码,我们可以学习如何处理异步请求,发送JSON或XML数据,以及处理服务器响应。 6. **树形组件和网格**:EXT的`Ext....

    Ext .net控件

    在.NET环境中,将Ext JS封装为.NET控件允许开发者在Visual Studio中像使用其他ASP.NET控件一样使用Ext JS组件。这意味着可以通过拖放操作在设计视图中添加和配置这些控件,显著简化了开发过程,降低了学习曲线。 3...

    ext js中文开发手册

    《EXT JS中文开发手册》详尽解读与应用指南 **一、EXT JS简介** EXT JS是一种基于JavaScript的开源框架,专为Web应用程序的界面开发而...通过深入学习和实践,你将能够利用EXT JS构建出高性能、高可维护性的Web应用。

    ext6中年份选择控件亲测好用

    例如,配合`Ext.form.Panel`创建一个包含多个字段的表单,或者在`Ext.grid.Panel`中作为列渲染器,展示或编辑数据中的年份信息。 总之,EXT6.20提供的YearField控件为开发者提供了高效且便捷的方式来处理年份选择...

    EXT酒店管理实例EXT酒店管理实例

    EXT JS提供了一系列预先封装好的UI组件,如表格、面板、表单、树形视图等,这些组件具有高度可定制性,可以满足各种复杂的界面设计需求。通过EXT JS,开发者能够轻松构建出响应式和适应不同屏幕尺寸的Web应用。 在...

    Ext的Tab标签封装

    "Ext的Tab标签封装"指的是使用ExtJS库创建的TabPanel组件,它允许用户在一个区域内通过点击不同的标签来展示不同的内容面板。 在描述中提到的"兼容Firefox 和 IE浏览器",这意味着该封装方法考虑到了跨浏览器的兼容...

Global site tag (gtag.js) - Google Analytics