您的位置:首页 > Web前端 > JavaScript

Extjs优化(二)Form表单提交通用实现

2013-04-15 00:00 746 查看
/** 
* 提交表单 
*/ 
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(); 
} 
});
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: