Javascript 检查所选行是否是新添加的
我有一个带内联编辑的jgrid,当我点击寻呼机按钮中的“+”时,它会在可编辑模式下添加一行。当行处于可编辑模式时,我再次单击“+”,此时我想显示一条消息,说“网格处于编辑模式,请保存它”Javascript 检查所选行是否是新添加的,javascript,jqgrid,free-jqgrid,Javascript,Jqgrid,Free Jqgrid,我有一个带内联编辑的jgrid,当我点击寻呼机按钮中的“+”时,它会在可编辑模式下添加一行。当行处于可编辑模式时,我再次单击“+”,此时我想显示一条消息,说“网格处于编辑模式,请保存它” 但在网格中添加一行且该行处于添加模式后,会触发此操作。。因此,我想检查这一行是否是新的,如果这一行是新的,我不想在单击+时抛出错误。有许多方法可以实现您的要求。关于您所做的事情,您没有发布足够的详细信息,但是因为您测试了editable属性,我可以猜您写的是inlineav添加的“+”按钮。在这种情况下,jqG
但在网格中添加一行且该行处于添加模式后,会触发此操作。。因此,我想检查这一行是否是新的,如果这一行是新的,我不想在单击+时抛出错误。有许多方法可以实现您的要求。关于您所做的事情,您没有发布足够的详细信息,但是因为您测试了
editable
属性,我可以猜您写的是inlineav
添加的“+”按钮。在这种情况下,jqGrid在单击添加按钮时调用addRow
。方法addRow
具有beforeAddRow
回调和jqGridInlineBeforeAddRow
事件,您可以使用该事件。回调/事件应返回false
,以防止添加新行并开始编辑。此外,您还可以使用jqGrid的savedRow
参数来测试其他行是否处于编辑模式。您可以使用getGridParam
获取“savedRow”
参数。返回的值是保存的行数组,其中包含开始编辑之前的值。因此,如果数组光栅的长度为0,则其他行仍在编辑中。如何在创建网格后添加这些事件,我尝试使用setgridparamworking@Ekata当前位置我不确定你指的是什么事件。您可以使用$(“#gridid”).bind(“jqGridInlineBeforeAddRow”,函数(e,options){…return false;})
例如使用jqGridInlineBeforeAddRow
事件。您甚至可以在创建网格之前(或创建网格之后)将事件绑定到网格。
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;
}
}