Ada*_*kis 2 jquery jquery-plugins jqgrid jqgrid-asp.net
我正在尝试调用jqGrid的setGridWidth函数,但我收到错误:
Object [object Object]没有方法'setGridWidth'
我确定这是愚蠢的.这是显示网格的代码(很好),然后尝试调整它的大小.
$("#jqGridElement").jqGrid({
datastr: tableSrc,
jsonReader: { repeatitems: false },
datatype: "jsonstring",
colNames: ['title', 'subtitle'],
colModel: [
{ name: 'title', index: 'title', width: 55 },
{ name: 'subtitle', index: 'subtitle'}],
height: 'auto',
gridview: true
});
$("#jqGridElement").setGridWidth(600);'
Run Code Online (Sandbox Code Playgroud)
编辑
我也尝试过:
var gridObj = $("#jqGridElement").jqGrid({ datastr: tableSrc, .......
gridObj.setGridWidth(300);
Run Code Online (Sandbox Code Playgroud)
结果相同
我想你的设置$.jgrid.no_legacy_api = true;就像我上次演示时那样.
jqGrid的"标准"(遗留API)代码设置了jQuery的许多方法扩展.使用许多其他jQuery插件时很危险.名称冲突的可能性增加了.所以建议使用"新风格"的jqGrid API.如果是setGridWidth方法,你应该使用
$("#jqGridElement").jqGrid('setGridWidth', 600);
Run Code Online (Sandbox Code Playgroud)
代替
$("#jqGridElement").setGridWidth(600);
Run Code Online (Sandbox Code Playgroud)
一个小的一般性评论:我建议你定义gridObj为
var gridObj = $("#jqGridElement");
gridObj.jqGrid({ datastr: tableSrc,...
Run Code Online (Sandbox Code Playgroud)
代替
var gridObj = $("#jqGridElement").jqGrid({ datastr: tableSrc,...
Run Code Online (Sandbox Code Playgroud)
优点是gridObj将在调用之前设置值,$("#jqGridElement").jqGrid并且您可以gridObj在任何jqGrid事件内使用安全.例如,您可以gridObj在loadComplete事件内使用变量.如果您像现在一样使用它,那么gridObj变量可以是undefined第一次使用loadComplete事件.