【发布时间】:2013-04-07 03:46:51
【问题描述】:
我遇到了关于 JQgrid 的问题。
这是我的网格代码。
我正在使用“beforerowselect”和“loadcomplete”的客户端事件
注意:我正在使用加载完成来重新加载网格
每次重新加载网格时,它都会选择该项目。
<trirand:JQGrid ID="jqgrid" runat="server" Height="475px" Width="1510px" MultiSelect="false" ShrinkToFit="true" AutoWidth="true">
<ClientSideEvents BeforeRowSelect="beforeSelect" LoadComplete="loadComplete"/>
在“beforeselectevent”中,我在这里所做的是获取
的单元格值
“itemid”的rowid。
我尝试创建一个会话变量来存储“ItemID”的值
并将其存储在 var sessionItemID 中,以便我能够将其传递给“加载完成事件”。
问题:但每次我尝试在此处插入断点时,它总是给我 '' 值。
function beforeSelect(rowid, e) {
grid = $("#<%= jqgrid.ClientID %>");
ItemID = grid.jqGrid('getCell', rowid, 'ItemID');
var sessionItemID = '<%=Session["ItemID"] %>';
}
在“加载完成”事件中。我传递了 sessionItemID,以便我可以获得 ItemID。
所以每次我更新网格上的项目。
它将重新加载页面并选择我更新的项目。
问题:重新加载后,重新加载后不选择项目。
function loadComplete(sessionItemID ) {
if (ItemID != 0 || ItemID != null) {
grid = $("#<%= jqgrid.ClientID %>");
grid.trigger("reloadgrid");
grid.jqgrid('setselection', "2" );
}
}
我想要实现的是这个(为了让故事简短)
1.在网格上选择行,会弹出表格然后更新记录。
2.更新记录后,用户将保存页面然后关闭。
3.网格将重新加载
4.它会记住选择/更新的项目。
我真的很困惑我接下来要做什么。谢谢
【问题讨论】:
-
尝试将 rowid 存储在隐藏字段中
-
我试图将它存储在隐藏字段中,但是当我传递值时,仍然给了我未定义的值。
标签: c# javascript jqgrid