在再次阅读文档和谷歌搜索并且没有成功发送beforeSumitCell事件后,我决定在这里发布问题。这是我的网格的定义:
$(this).jqGrid({
url:dataUrl,
datatype: "json",
colNames:['Semana', 'Fecha', 'Precio D', 'Precio E'],
colModel:[{name:'week',index:'index1', editable:false,width:100},
{name:'date',index:'index2', editable:false, width:90},
{name:'priceD',index:'index3', editable:true, width:90},
{name:'priceE',index:'index4', editable:false, width:90}],
rowNum:53,
autowidth: true,
rowList:[53],
pager: jQuery('#pager1'),
sortname: 'id',
viewrecords: true,
sortorder: "desc",
editurl:"clientArray",
onSelectRow: function (id)
{
if(id && id!==lastJQGridSel)
{
$(this).jqGrid('restoreRow',lastJQGridSel);
$(this).jqGrid('editRow',id,true);
lastJQGridSel=id;
}
},
beforeSubmitCell : function(rowid, name,val,iRow,iCol)
{
alert("beforeSubmitCell called");
},
caption:"Modality prices"
});
有人猜到它为什么不开火吗?事件调用堆栈说这个事件可以与cellSubmit设置'clientArray'一起使用。它只会为可编辑标志设置为true的单元格触发。在我的情况下priceD。
要尝试触发evnet,我只需单击priceD列的单元格并输入一个值并按Enter键。
提前致谢。
答案 0 :(得分:1)
jqGrid支持三种editing modes:内联编辑,表单编辑和单元格编辑。您使用editRow作为内联编辑的一部分,因此不要调用回调函数beforeSubmitCell,这是单元格编辑的一部分。