jqgrid 的编辑信息提示

在编辑时,无外乎两种结果:成功和失败。在form edit的弹出编辑窗体中隐藏了两个单元(td),一个的ID是FormError,另一个没有id,有class叫做topinfo。就是这两个家伙可以分别来显示错误信息和操作成功的信息。

以下在firebug中截图:


FormError在topinfo的上面,因此如果第一次操作成功(true),如果窗体不消失,在窗体上再次编辑后提交失败(false),则错误信息会出现在第一次成功信息的上面!


所以要在提交失败的语句段中清除成功信息。

以下是javascript代码:

 1  function Z_AfterSubmit_Edit(response, postdata) {
 2         var DialogVars = $.parseJSON(response.responseText);//响应信息
 3         $infoTr = $("#TblGrid_" + $.jgrid.jqID(this.id) + ">tbody>tr.tinfo"),
 4         $infoTd = $infoTr.children("td.topinfo");//信息栏
 5         if (DialogVars.success) {
 6             var myInfo = '<div class="ui-state-highlight ui-corner-all">' +
 7                             '<span class="ui-icon ui-icon-info" style="float: left; margin-right: .3em;"></span>' +
 8                             DialogVars.message +
 9                          '</div>'
10             $infoTd.html(myInfo);
11             $infoTr.show();
12             return [true, myInfo, ""];
13         } else {
14             var myInfo = //'<div class="ui-state-highlight ui-corner-all">' +
15                          '<span class="ui-icon ui-icon-alert" style="float: left; margin-right: .3em;"></span>' +
16                             DialogVars.message +
17                         '</div>'
18             //错误信息是在id为FormError的单元格显示
19             $infoTr.hide();//隐藏信息栏以免同时显示info和FormError
20             return [false, myInfo, ""];
21         }
22     }

在jqgrid中调用:

 afterSubmit: Z_AfterSubmit_Edit

窗体在编辑后是保持显示还是消失,可以通过设置closeAfterEdit的值为true或false来实现。默认的是成功消失,失败时窗体不消失。如果想不管成功还是失败都显示窗体,可以把closeAfterEdit设为false。

 closeAfterEdit: false

 

--END--


posted @ 2013-11-11 18:53  ibg  阅读(2964)  评论(0编辑  收藏  举报