【发布时间】:2013-02-21 06:05:58
【问题描述】:
我有一个 c# asp.net 应用程序,它使用 Listview 控件来呈现一个宽表(许多列)。
为了使这个问题更通用一点,Listview 只是呈现一个 HTML 表格,并且是附带问题的。
我想使用 jqGrid 的“tableToGrid”函数来冻结标题并处理垂直和水平滚动,最好冻结生成的 HTML 表的第一列。冻结的标题和滚动正在工作,但经过大量研究,我似乎无法“将各个部分放在一起”来冻结列。
除非必要,否则我不想为表中的所有列显式创建 colNames 和 colModel,因为这是由 tableToGrid 函数处理的,所以我使用了一个更改冻结列的示例并想出了这个脚本:
tableToGrid($('#parcelTable'),
{
sortable: false,
multiselect: false,
shrinkToFit: false,
width: 952,
height: 300
})
.jqGrid('destroyFrozenColumns')
.jqGrid("setColProp", "rowEdit", { frozen: true })
.jqGrid("setFrozenColumns")
.trigger('reloadGrid');
当我尝试上述方法时,我收到消息 Microsoft JScript 运行时错误:'undefined' is null or not an object
我还尝试不链接冻结列的代码,如
$('#parcelTable').jq('destroyFrozenColumns');
$('#parcelTable').(jqGrid("setColProp", "rowEdit", { freeze: true }) 等
并得到了同样的信息。
毫无疑问,我犯了一些愚蠢的语法或使用错误,但我不知道从哪里开始,也不知道这是否是最好的方法。 任何帮助表示赞赏 - 谢谢!
【问题讨论】: