【发布时间】:2011-08-09 17:38:40
【问题描述】:
实际上创建过滤器jqGrid 工具栏 应该像“3.5 中的新功能,集成搜索工具栏”example 或documentation 中那样直接。
但是,当我运行 myDataTable.jqGrid('filterToolbar', filterOpts); 行时,我总是在 JQuery.jqGrid.src.js 的第 3613 行中收到错误“无法获取属性 'colModel' 的值:对象为空或未定义”,即:$.each($t.p.colModel,function(i,n) { ..
仅作记录,jqGrid 的版本是 4.1.2。网格本身显示/工作正常。
这是我如何初始化网格的代码,很可能我确实监督了一些非常简单的事情。
var ft = document.getElementById("myData"); // this is the HTML table element as usual
var colModel = [
{ name: 'i', index: 'i', width: 60, hidden: true, search: false },
{ name: 'c', index: 'c', width: 100, search: true },
{ name: 'p', index: 'p', width: 100, search: true },
{ name: 'displayed', index: 'displayed', align: 'center', width: 100, formatter: booleanToCheckmark, search: false },
];
$(function() {
$(ft).jqGrid({
datatype: 'clientSide',
data: globals.myData, // Array of objects ("the data"), data is correctly displayed
height: 300,
// autowidth: true,
width: 300,
forceFit: true,
colNames: ['I', 'C', 'P', 'dis.'],
colModel: colModel,
rowNum: 10000,
sortname: 'displayed',
sortorder: 'desc',
viewrecords: true,
gridview: true,
caption: 'XYZ'
});
});
// filter bar
// http://www.trirand.com/jqgridwiki/doku.php?id=wiki:toolbar_searching
var filterOpts = { autosearch: true };
// LINE WHERE IT FAILS
$(ft).jqGrid('filterToolbar', filterOpts);
【问题讨论】:
-
您在发布的代码中使用了太多未知变量和函数:
w、wd、wc、wp、globals.myData、@987654332 @。为了能够重现您的问题,您应该包括在内。
标签: javascript jquery-plugins jqgrid