/** * 提交表单 */ function $postForm(a) { if (a.formPanel.getForm().isValid()) { var b = a.scope ? a.scope: this; a.formPanel.getForm().submit({ scope: b, url: a.url, method: "post", params: a.params, waitMsg: "正在提交数据...", success: function(c, d) { Ext.ux.Toast.msg("操作信息", "成功信息保存!"); if (a.callback) { a.callback.call(b, c, d); } }, failure: function(c, d) { Ext.MessageBox.show({ title: "操作信息", msg: "信息保存出错,请联系管理员!", buttons: Ext.MessageBox.OK, icon: "ext-mb-error" }); if (a.callback) { a.callback.call(b); } } }); } }
使用改代码只需要13行代码 原始需要25-30行代码搞定 ,示例:
saveRecord: function() { $postForm({ formPanel:this.formPanel, scope:this, url: __ctxPath + "/basedata/saveStudentDepartment.action", params:{}, callback: function(d, f) { var e = Ext.getCmp("StudentDepartmentGrid"); if (e != null) { e.getStore().reload(); } b.close(); } });
更多Extjs优化(二)Form表单提交通用实现相关文章请关注PHP中文网!