2016-02-24 25 views
0

我有一个jgrid,内嵌编辑,当我点击“+”按钮时,它在可编辑模式下添加一行。当该行处于可编辑模式时,我再次点击“+”时,我想显示一条消息,说“网格处于编辑模式,请保存”。检查所选的行是否新添加

document.getElementById('partnerGrid_iladd').onclick = function() { 

    var rowid = jQuery("#partnerGrid").jqGrid('getGridParam', 'selrow'); 
    var edited = ""; 
    var ind = jQuery("#partnerGrid").getInd(rowid, true); 
    if (ind != false) { 
    edited = $(ind).attr("editable"); 
    } 

    if (edited === "1") { 
    alert("There is an row in editable mode ,Please save the row before adding another row"); 
    return; 

    } 
} 

但排在网格并将该行处于增加状态。所以我要检查,如果该行是如果行是新的,我不一个新的后这个被炒鱿鱼想要点击+时发生错误。

回答

0

有很多方法可以实现您的要求。您没有发布足够的详细信息,但是由于您测试了editable属性,我可以猜测您写的是inlineNav添加的“+”按钮。在jqGrid调用addRow的情况下点击Add按钮。方法addRowbeforeAddRow回调和jqGridInlineBeforeAddRow事件,您可以使用。该回调/事件应返回false以防止添加新行并开始编辑。此外,您可以使用jqGrid的savedRow参数来测试其他行是否处于编辑模式。您可以使用getGridParam获取"savedRow"参数。在开始编辑之前,返回值是具有值的已保存行的数组。因此,如果数组的length变成0,那么其他行仍在编辑。

+0

如何在创建网格后添加这些事件,我尝试使用setgridparam而不工作 – Ekata

+0

@Ekata:我不确定您的意思是哪个事件。你可以使用'$(“#gridid”)。bind(“jqGridInlineBeforeAddRow”,function(e,options){... return false;})'例如使用'jqGridInlineBeforeAddRow'事件。即使在创建网格之前(或创建网格之前),您也可以将事件绑定到网格。 – Oleg

相关问题