Heim > Artikel > Web-Frontend > Extjs-Optimierung (2) Universelle Implementierung der Formularübermittlung
/** * 提交表单 */ 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); } } }); } }
Es sind nur 13 Codezeilen erforderlich, um den geänderten Code zu verwenden. Der ursprüngliche Bedarf beträgt 25-30 Codezeilen. Beispiel:
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(); } });
Für weitere Extjs-Optimierung (2) Formular Bitte achten Sie auf die Einreichung universeller Implementierungsartikel auf der chinesischen PHP-Website!