EXT 使用表单修改数据
2009-12-16 11:22
239 查看
//查询管理员数据的store
//修改用户信息的表单
//修改用户信息的窗体
//修改用户按钮
//用户管理的grid
这里需要注意的是在修改的表单里面 文本框的name名字需要和store里面的fields内的元素是一样的才可以正常加载。因此这样修改的话,在类里面就需要把修改了的值每一个都用request来获得然后封装了
var ds_manager=new Ext.data.JsonStore({ url:"manager!selectforback.ph", totalProperty: "results", root: "list", fields:[{name : 'managerId',mapping : 'managerId',type : 'int'}, {name : 'account',mapping : 'account',type : 'string'}, {name : 'password',mapping : 'password',type : 'string'}, {name : 'truename',mapping : 'truename',type : 'string'}, {name : 'sex',mapping : 'sex',type : 'string'}, {name : 'telephone',mapping : 'telephone',type : 'string'}, {name : 'mobeilphone',mapping : 'mobeilphone',type : 'string'}, {name : 'department',mapping : 'department',type : 'string'}, {name : 'job',mapping : 'job',type : 'string'}, {name : 'addTime',mapping : 'addTime'}, {name : 'logintime',mapping : 'logintime',type : 'int'}, {name : 'remark',mapping : 'remark',type : 'string'}] }); ds_manager.load();
//修改用户信息的表单
var managerEditForm = new Ext.FormPanel({ border : false, baseCls : 'x-plain', bodyStyle : 'padding:5px 5px 0', labelAlign : 'right', labelWidth : 70, url : 'manager!update.ph', defaults : {anchor : '93%',msgTarget : 'side'}, defaultType : 'textfield', items : [{ xtype : 'hidden', name : 'managerId' },{ fieldLabel : '用户名', id : 'account', name : 'account', allowBlank : false, readOnly:true, maxLength : 30 }, { fieldLabel : '密码', id : 'password1', name : 'password', allowBlank : false, minLength : 6, maxLength : 30, inputType:'password' },{ fieldLabel : '确认密码', id : 'password2', name : 'surepassword', minLength : 6, maxLength : 30, inputType:'password', vtype:'password', vtypeText:"两次密码不一致!", confirmTo:'password1', allowBlank : false }, {fieldLabel : '用户姓名',name : 'truename',allowBlank : false,maxLength : 20}, {xtype : 'combo', fieldLabel : '性别', mode : 'local', name : 'sex', editable : false, store : new Ext.data.SimpleStore({ data : [['男', '男'], ['女', '女']], fields : ['text', 'value'] }), displayField : 'text', valueField : 'value', mode : 'local', triggerAction : 'all', emptyText : '请选择性别' },{ fieldLabel : '所属部门', id : 'dept', name : 'department', allowBlank : false, maxLength : 30 },{ fieldLabel : '职称', id : 'duty', name : 'job', allowBlank : false, maxLength : 30 }, {fieldLabel : '联系电话',name : 'telephone',allowBlank : false,maxLength : 50}, {fieldLabel : '手机号码',name : 'mobeilphone',allowBlank : false,maxLength : 20}, {fieldLabel : '备注',name : 'remark',xtype : 'textarea',maxLength : 120} ], buttonAlign : 'center', minButtonWidth : 60, buttons : [{ text : '修改', handler : function(btn){ if (managerEditForm.getForm().isValid()) { btn.disable(); managerEditForm.getForm().submit({ waitTitle : '请稍候', waitMsg : '正在修改数据,请稍候...', success : function(form,action) { Ext.Msg.show({ title : '成功提示', msg : '修改成功!!', buttons : Ext.Msg.OK, fn : function() { ds_manager.load(); btn.enable(); } }); }, failure : function(form, action) { Ext.Msg.show({ title : '错误提示', msg : '操作失败!', buttons : Ext.Msg.OK, fn : function() {btn.enable();}, icon : Ext.Msg.ERROR }); } }); } } },{ text : '重置', handler : function() { var record = grid_manager.getSelectionModel().getSelected(); if(record){ managerEditForm.getForm().loadRecord(record); } } }, { text : '取消', handler : function() {this.ownerCt.ownerCt.hide();} }] });
//修改用户信息的窗体
var window_edit_manager = new Ext.Window({ title : '编辑用户信息', width : 620, resizable : false, autoHeight : true, modal : true, closeAction : 'hide', items : [managerEditForm] });
//修改用户按钮
var btn_modify_manager = new Ext.Button({ text : '修改用户', iconCls : 'icon-edit', handler : function() { var record = grid_manager.getSelectionModel().getSelected(); if(!record){ Ext.Msg.show({ title : '错误提示', msg : '请选择您要修改的数据!', buttons : Ext.Msg.OK, icon : Ext.Msg.ERROR }); }else{ if(record){ window_edit_manager.show(); managerEditForm.getForm().loadRecord(record); } } } });
//用户管理的grid
var grid_manager = new Ext.grid.GridPanel({ title : '用户管理', region : 'center', height:150, cm:cm_manager, store: ds_manager, sm :sm, enableColumnMove : false, trackMouseOver : false, frame : true, autoExpandColumn : 'remark', clicksToEdit : 1, tbar : [btn_modify_manager], bbar : new Ext.PagingToolbar({ pageSize : 20, store : ds_manager, displayInfo : true, displayMsg : '第 {0} - {1} 条 共 {2} 条', emptyMsg : "没有记录" }) });
这里需要注意的是在修改的表单里面 文本框的name名字需要和store里面的fields内的元素是一样的才可以正常加载。因此这样修改的话,在类里面就需要把修改了的值每一个都用request来获得然后封装了
相关文章推荐
- 第十天--使用Ajax表单修改数据
- 使用语句修改数据表结构
- yii框架表单模型使用及以数组形式提交表单数据示例
- spring mvc使用@InitBinder 标签对表单数据绑定
- SQL Server中在存储过程中使用游标修改表中数据
- 抓包工具Fiddler的使用教程(六):修改Response数据
- 不使用反射,“一行代码”实现Web、WinForm窗体表单数据的填充、收集、清除,和到数据库的CRUD
- 抓包工具:Fiddler 修改请求表单和响应数据
- 在提交流程时使用SQL修改提交的主表数据
- easyui使用Ajax提交表单,返回Json数据
- jquery序列化form表单使用ajax提交后处理返回的json数据
- jqGrid与Struts2的结合应用(三) —— 使用自定义表单对话框编辑Grid数据
- 使用AngularJS修改、删除表格数据
- 使用nodejs,express,mysql,Bootstrap开发采购招标网站(四)Bootstrap-table实现Ajax新增修改数据
- 使用抓包工具 Fiddler 修改后台接口返回数据
- 使用jquery修改表单的提交地址
- SpringMVC使用@Valid注解表单验证数据
- JavaWeb -- Struts1 使用示例: 表单校验 防表单重复提交 表单数据封装到实体
- 使用SSH框架,只能查询数据,不能修改和保存数据的问题
- struts2_day02_06-获取表单数据(使用ServletActionContext获取和接口注入)