如果行正在编辑中,则jqGrid onPaging将停止加载新页面

时间:2013-03-08 12:12:20

标签: jqgrid

我有一个带有寻呼机的网格。我需要阻止寻呼机加载另一个页面,而在当前页面上的一行是内联编辑。因此,当我创建网格时,我定义了onPaging函数

....
onPaging : function(){
        if (inEdit()>0){
            alert("Finish editing the current line");
            return 'stop';
        }
    }
....

函数inEdit只计算attr可编辑的行数。

这可以完成这项任务,但是后来当我在调用时调用编辑的行上的restoreRow函数时,函数无法将行恢复到以前的状态。

稍后编辑:

稍后调用此函数取消编辑时会出现问题

function cancelEdit(id){
    /*this line does nothing at all --> */ $('#list').jqGrid('restoreRow',id);
    //The only way restore worked is by calling a grid reload but that is not really a solution
    $('#list').trigger("reloadGrid", [{page:$('#list')[0].p.page}]);
    $('#'+id+' [name=editButton]').show();
    $('#'+id+' [name=submitButton]').hide();
    $('#'+id+' [name=cancelButton]').hide();
}

PS:编辑/保存/取消/删除是自定义按钮

1 个答案:

答案 0 :(得分:0)

我想如果你看看你正在做什么但是看看Oleg的帖子 jqGrid - Inline edit - Detect dirty / changed cells 并使用该标志来防止分页,你将能够完成你想要做的事情。