前言:dwz默认提供了error、success、timeout的信息级别输出,也就是说,当你在向服务端提交信息后,前台页面可以提供的弹出框主题可以为以上三种,但是有的时候,我们需要向用户提示一种信息,既不是error,也不是success,我们需要info,告诉用户而已,那么就需要进行一些改造。
首先,BaseConroller.java中增加以下代码
protected ModelAndView ajaxDoneInfo(String message) {
return ajaxDone(201, message, "");
}
接着,在你需要输出info信息的地方调用
return ajaxDoneInfo(msg);
然后,前台的dwz.core.js中需要改动一下内容
pageInfo: {pageNum:"pageNum", numPerPage:"numPerPage", orderField:"orderField", orderDirection:"orderDirection"},
statusCode: {ok:200, error:300, timeout:301, info:201},
keys: {statusCode:"statusCode", message:"message"},
ajaxDone:function(json){
if(json[DWZ.keys.statusCode] == DWZ.statusCode.error) {
if(json[DWZ.keys.message] && alertMsg) alertMsg.error(json[DWZ.keys.message]);
} else if (json[DWZ.keys.statusCode] == DWZ.statusCode.timeout) {
if(alertMsg) alertMsg.error(json[DWZ.keys.message] || DWZ.msg("sessionTimout"), {okCall:DWZ.loadLogin});
else DWZ.loadLogin();
} else if (json[DWZ.keys.statusCode] == DWZ.statusCode.ok){
if(json[DWZ.keys.message] && alertMsg) alertMsg.correct(json[DWZ.keys.message]);
} else if (json[DWZ.keys.statusCode] == DWZ.statusCode.info){
if(json[DWZ.keys.message] && alertMsg) alertMsg.info(json[DWZ.keys.message]);
};
},
最后,在dwz.ajax.js文件中改动以下内容
* {"statusCode":"301", "message":"会话超时"}
* {"statusCode":"201", "message":"信息提示"}
*
*/
function navTabAjaxDone(json){
DWZ.ajaxDone(json);
if (json[DWZ.keys.statusCode] == DWZ.statusCode.ok || json[DWZ.keys.statusCode] == DWZ.statusCode.info){
if (json.navTabId){ //把指定navTab页面标记为需要“重新载入”。注意navTabId不能是当前navTab页面的
function dialogAjaxDone(json){
DWZ.ajaxDone(json);
if (json[DWZ.keys.statusCode] == DWZ.statusCode.ok || json[DWZ.keys.statusCode] == DWZ.statusCode.info){
one more thing,index.jsp文件中增加以下内容
statusCode : {
ok : 200,
error : 300,
timeout : 301,
info : 201
}, //【可选】
总结:最后,切记要刷新页面缓存,否则,可能看不到你改的效果,OK,看效果图吧。