mic*_*ele 3 javascript jquery data-manipulation jqgrid
我在LiveDataManipulation-> EditRow中关注本教程http://www.trirand.com/blog/jqgrid/jqgrid.html
我的网格从脚本接收数据a.php.用户可以通过jqGrid修改此数据.修改数据后的jqGrid将数据发送到B.php更新我的数据库的脚本并返回响应消息,如"一切顺利".
我希望在页面的某个位置向用户发出警报或显示此响应.
阅读教程,在这里http://www.trirand.com/jqgridwiki/doku.php?id=wiki:form_editing我认为我要使用afterSubmit选项,但我还没有理解如何在编辑面板上打印结果.
我已经写了:
$("#editImpresa").click(function(){
var gr = jQuery("#tabImprese").jqGrid('getGridParam','selrow');
if( gr != null ) jQuery("#tabImprese").jqGrid('editGridRow',gr,{
height:690,
width:500,
closeAfterEdit : true,
reloadAfterSubmit:false,
afterSubmit: function(response,postdata){
if(response.responseText=="ok")
success=true;
else success = false;
return [success,response.responseText]
}
});
Run Code Online (Sandbox Code Playgroud)
我该怎么做?谢谢.
首先,选项closeAfterEdit:true是在成功的服务器响应之后关闭编辑表单.您应该将设置更改为默认值closeAfterEdit:false才能显示任何内容.
接下来,我建议您使用导航器工具栏,而不是在网格外部创建按钮.在你可以使用的情况下
var grid = jQuery("#tabImprese");
grid.jqGrid('navGrid','#pager', {add:false,del:false,search:false}, prmEdit);
Run Code Online (Sandbox Code Playgroud)
另一个好的选择是使用ondblClickRow事件处理程序
ondblClickRow: function(rowid) {
$(this).jqGrid('editGridRow',rowid,prmEdit);
}
Run Code Online (Sandbox Code Playgroud)
(见这里)或两种方式同时.
无论如何,您必须定义editGridRow方法(the prmEdit)的选项.重要的是要知道只有在服务器响应不包含错误的HTTP状态代码时才会调用afterSubmit.因此,您应该使用errorTextFormat来解码错误服务器响应.该afterSubmit事件处理程序,你可以用它来显示状态信息.
在演示中,我仅errorTextFormat用于演示状态和错误消息的显示:

状态消息在3秒内消失:

你会在这里找到相应的演示.
在实际示例中,您将导致将代码写入状态消息放在afterSubmit事件处理程序中以及在errorTextFormat中返回错误消息的代码.
| 归档时间: |
|
| 查看次数: |
17985 次 |
| 最近记录: |