Javascript jqGrid在使用savekey时以不同的方式触发“更改”事件
我有一个jqGrid:1对行使用表单编辑;2在其中一个字段上有一个“更改”侦听器;并且,3使用onClickSubmit回调 如果我更改“位置”字段并单击提交按钮,“更改”事件侦听器将在单击提交之前触发 如果启用savekey,则更改“位置”字段并按Enter键。当代码手动关闭编辑表单时,onClickSubmit函数结束时,将触发“更改”事件侦听器 该字段的def列如下所示:Javascript jqGrid在使用savekey时以不同的方式触发“更改”事件,javascript,jquery,jqgrid,Javascript,Jquery,Jqgrid,我有一个jqGrid:1对行使用表单编辑;2在其中一个字段上有一个“更改”侦听器;并且,3使用onClickSubmit回调 如果我更改“位置”字段并单击提交按钮,“更改”事件侦听器将在单击提交之前触发 如果启用savekey,则更改“位置”字段并按Enter键。当代码手动关闭编辑表单时,onClickSubmit函数结束时,将触发“更改”事件侦听器 该字段的def列如下所示: {name:'location', index :'locatio
{name:'location',
index :'location',
width :120,
editable :true,
edittype :'text',
editrules : {required: true},
editoptions : {
size : 40,
maxlength : 400,
dataEvents : [{
type: 'change',
data: { i: $("#grdLocationList").jqGrid("getGridParam")},
fn : chC.query.onLocationChange
}]
}
},
然后,我使用以下代码编辑该行:
$("#grdLocationList").jqGrid("editGridRow",
rowid,
{
onclickSubmit : onclickSubmitLocal
// , savekey : [true, 13]
}
);
是否有任何方法可以强制挂起的“更改”事件始终在调用我的onClickSubmit处理程序之前触发?由于没有包含chC.query.onLocationChange的代码,因此问题还不完全清楚。你在里面做什么?为什么在单击SubmitLocal之前执行事件如此重要?为什么不能在onclickSubmitLocal回调中调用chC.query.onLocationChange或触发change事件?onLocationChange进行同步ajax调用,检索输入到位置字段的地址的lat/lon,并存储这些lat/lon以供onclickSubmitLocal回调期间使用。我确实尝试在onClickSubmitLocal中复制该ajax调用……但是由于更改事件最终触发,位置查找发生了两次。