Javascript jqGrid colModel未调用函数
在上面的代码中,调用了Javascript jqGrid colModel未调用函数,javascript,json,jqgrid,Javascript,Json,Jqgrid,在上面的代码中,调用了attrSetting。如果我将其更改为{“name”:“A”,“index”:“0”,“cellattr”:attrSetting}。它运行良好。那我该怎么办?cellattr将其视为字符串而不是函数 var gridData = {"list":[{"A":"abc", "B":"def", "C":"IRIS", "D":"Testing","E":"17-12- 2012","F":"Test", "attr":{"A":{"rows
attrSetting
。如果我将其更改为{“name”:“A”,“index”:“0”,“cellattr”:attrSetting}
。它运行良好。那我该怎么办?cellattr将其视为字符串而不是函数
var gridData = {"list":[{"A":"abc", "B":"def", "C":"IRIS", "D":"Testing","E":"17-12- 2012","F":"Test", "attr":{"A":{"rowspan": 3}}},{"A":"abc", "B":"def", "C":"IRIS", "D":"Testing","E":"17-12-2012","F":"Test", "attr":{"A":{"display":"none"}}},{"A":"abc", "B":"def", "C":"IRIS", "D":"Testing","E":"17-12-2012","F":"Test", "attr":{"A":{"display":"none"}}}]};
$(document).ready(function(){
prepareGrid();
});
prepareGrid = function(colModel) {
$("#grid").jqGrid({
datatype : 'local',
contentType : 'application/json',
data : gridData.list,
loadtext : "Loading...",
colNames : ['TB Element','GL Element', 'Company Name', 'Status', 'Date', 'User'],
colModel : [
{"name":"A", "index":"0", "cellattr":"attrSetting" },
{name:"B", index:1 },
{name:"C", index:2},
{name:"D", index:3},
{name:"E", index:4},
{name:"F", index:5}
],
width : '500px',
height : '200px',
rownumWidth : 30,
scrollrows : true,
shrinkToFit : false,
rownumbers : true,
viewrecords : true,
});
};
function attrSetting(rowId, val, rawObject, cm) {
var attr = rawObject.attr[cm.name], result;
if (attr.rowspan) {
result = ' rowspan=' + '"' + attr.rowspan + '"';
} else if (attr.display) {
result = ' style="display:' + attr.display + '"';
}
return result;
};
你应该换衣服
“cellattr”:“attrSetting”
到
“cellattr”:属性设置
此外,在使用jqGrid选项时,您应该小心。您当前的代码包含许多bug。举个例子:
- 如果使用
,则应从数据类型:“local”
中删除colModel
属性,或使用与索引
属性值完全相同的值。如果不遵守该规则,将无法对网格列进行排序,并且本地数据的搜索/筛选也将不起作用名称
- 您不使用jqGrid的
或pager
选项。在这种情况下,我严格建议您使用一些足够大的值指定toppager
选项,如rowNum
。rowNum:10000
的defauls值为20(请参见表格中的“默认”列)。因此jqGrid将只显示您指定的数组rowNum
中的前20行gridData.list
和width
的值应该是像height
或500
这样的数字,而不是像200
和'500px'
'200px'这样的字符串。
的值可以是字符串height
或“auto”
“%100”
- 没有
选项contentType
- 我建议您使用
和gridview:true
选项autoencode:true