jqGrid - 是否有可能在 ondblClickRow 上获取对象属性?
jqGrid - Is it possible to get object properties ondblClickRow?
我有以下 jqGrid:
我进行 AJAX 调用以在该网格上显示元素。我想在网格(同一选项卡)上显示更多项目并进行了另一个 AJAX 调用。
所以,我创建了 2 个数组。第一个数组存储 Ajax 调用 1 的结果,第二个数组存储 Ajax 调用 2.
的结果
我连接了这些数组并将它们显示在网格上:
var test3 = test1.concat(test2);
thegrid.addJSONData(test3);
到目前为止一切顺利,唯一的问题是,当我想双击网格上的项目时,它只能对每个项目使用相同的路径,这意味着它只能打开一种形式,而不能打开不同的形式.
那是因为点击网格时,调用了这个函数:
ondblClickRow: function (rowid, iRow, iCol, e) {
onDoubleClickGrid(rowid, iRow, iCol, e, divname, listname);
}
完整函数如下:
function onDoubleClickGrid(rowid, iRow, iCol, e, divname, listname, useFormToOpen) {
var rowData = $("#" + divname).getRowData(rowid);
var curID = rowData.Id;
var useForm = "EditForm.aspx";
if (checkNull(useFormToOpen)!="") {
useForm = useFormToOpen;
}
var curPath = "/MM/Lists/" + listname;
// var curPath = "/nderungsantrag/Lists/" + listname;
var url = curPath + "/" + useForm + "?ID=" + curID;
openInDialog(dlgWidth, dlgHeight, true, true, true, url);
}
我尝试使用标志,但这些在这里不起作用,因为对象都在合并数组中,并且无法区分它们。
是否可以获取在 dblClickRow 上单击的元素的对象值?
因为那时我可以使用 for 循环并检查对象的属性。根据 属性 它有什么,我可以改变路径。还是有其他方法可以做到这一点?
ondblClickRow有一个参数事件(第4个)。在这里你可以得到这样的元素(如果我理解正确的要求):
ondblClickRow : function (rowid, iRow, iCol, e) {
var target = e.target || e.srcElement; // this is what you need
....
}
您的 curPath 是一个常量值和一个变量的组合
var curPath = "/MM/Lists/" + listname
如果 listname 变量在双击该行期间没有改变,您将始终拥有相同的 curPath。我没有看到你是否在双击该行时更改它。
我有以下 jqGrid:
我进行 AJAX 调用以在该网格上显示元素。我想在网格(同一选项卡)上显示更多项目并进行了另一个 AJAX 调用。
所以,我创建了 2 个数组。第一个数组存储 Ajax 调用 1 的结果,第二个数组存储 Ajax 调用 2.
的结果我连接了这些数组并将它们显示在网格上:
var test3 = test1.concat(test2);
thegrid.addJSONData(test3);
到目前为止一切顺利,唯一的问题是,当我想双击网格上的项目时,它只能对每个项目使用相同的路径,这意味着它只能打开一种形式,而不能打开不同的形式.
那是因为点击网格时,调用了这个函数:
ondblClickRow: function (rowid, iRow, iCol, e) {
onDoubleClickGrid(rowid, iRow, iCol, e, divname, listname);
}
完整函数如下:
function onDoubleClickGrid(rowid, iRow, iCol, e, divname, listname, useFormToOpen) {
var rowData = $("#" + divname).getRowData(rowid);
var curID = rowData.Id;
var useForm = "EditForm.aspx";
if (checkNull(useFormToOpen)!="") {
useForm = useFormToOpen;
}
var curPath = "/MM/Lists/" + listname;
// var curPath = "/nderungsantrag/Lists/" + listname;
var url = curPath + "/" + useForm + "?ID=" + curID;
openInDialog(dlgWidth, dlgHeight, true, true, true, url);
}
我尝试使用标志,但这些在这里不起作用,因为对象都在合并数组中,并且无法区分它们。
是否可以获取在 dblClickRow 上单击的元素的对象值? 因为那时我可以使用 for 循环并检查对象的属性。根据 属性 它有什么,我可以改变路径。还是有其他方法可以做到这一点?
ondblClickRow有一个参数事件(第4个)。在这里你可以得到这样的元素(如果我理解正确的要求):
ondblClickRow : function (rowid, iRow, iCol, e) {
var target = e.target || e.srcElement; // this is what you need
....
}
您的 curPath 是一个常量值和一个变量的组合
var curPath = "/MM/Lists/" + listname
如果 listname 变量在双击该行期间没有改变,您将始终拥有相同的 curPath。我没有看到你是否在双击该行时更改它。