我在这个网站上看到了很多类似的问题,所以我很抱歉,这是一个我不明白答案的问题的重复。但问题是:当触发此代码块时,我的麻烦是“jQuery("#tmpgrid").getCell 不是函数”(通过 firebug)
onSelectRow: function (id) {
var listid = jQuery('#tmpgrid').getCell(id, "Item id");
$(window.location).attr('href', '/template/details/' + listid);
}
在此 asp.net mvc 部分页面内
<table id="tmpgrid">
</table>
<div id="tmppager">
</div>
<script type="text/javascript">
var grid = $('#tmpgrid');
grid.jqGrid({
url: '/template/jsontemplate',
datatype: "json",
height: "auto",
autowidth: true,
colNames: ['Item id', 'Title', 'Create Date', 'Edit Date', 'Public'],
colModel: [
{ name: "id", index: "id", width: 25, search: false },
{ name: "Title", index: "Title", search: true, searchoptions: { sopt: ['cn']} },
{ name: "CreateDate", index: "CreateDate", width: 50, search: false },
{ name: "EditDate", index: "EditDate", width: 50, search: false },
{ name: "IsPublic", index: "IsPublic", width: 25, search: false }
],
rowNum: 10,
rowList: [10, 20, 30],
pager: '#pager',
sortname: 'CreateDate',
emptyrecords: 'No records to display',
ignoreCase: true,
viewrecords: true,
caption: "My Checklists",
onSelectRow: function (id) {
var listid = jQuery('#tmpgrid').getCell(id, "Item id");
$(window.location).attr('href', '/template/details/' + listid);
}
});
grid.jqGrid('navGrid', '#tmppager', { edit: false, add: false, del: false, searchtext: 'Search' });
</script>
我见过Oleg's posts关于脚本加载/排序问题,但我不相信这是我的问题(或者也许我没有正确理解解决方案) - 因为我没有使用开发人员版本,因此只有 2 个 js 文件:“grid.js” locale-en.js”和“jquery.jqgrid.min.js”。另外,我不确定这是否仍然适用于 3.7.2 之后的 jqgrid 版本。我正在使用最新的 4.0.0 版本
我正在用头撞墙。有什么想法吗?
最佳答案
您认为这是与另一个脚本的交互吗?我的网站上有一些 telerik 组件,当我拉出它们的 @Html.Telerik().ScriptRegistrar() 组件时,jqGrid 开始正常工作。
嗯...现在让自己摆脱那些 Telerik 组件。无论如何,我一直在计划这个。
感谢您的帮助!
关于jquery - jqgrid不是使用onSelectRow的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5691106/