将 jqgrid 属性放在一个公共变量中并重用它们?
put jqgrid properties in a common variable and reuse them?
我在一个 ASP.NET 网页中有 10 个 jqgrid,每个都向用户显示不同的数据。
除了 colNames、colModel、pager 和 sortname 属性外,所有其他属性都是相同的。请参阅下面的代码,
datatype: "local",
mtype: "GET",
cmTemplate: { sortable: true, resizable: true },
height: 'auto',
altRows: true,
altclass: '',
pgbuttons: false,
pgtext: "",
gridview: true,
loadonce: true,
shrinkToFit: false,
pager: gridPager,
autoencode: true,
sortname: 'Id',
width: $('.grid-wrapper').width() - 20,
emptyrecords: 'No records found',
viewrecords: true,
sortorder: "desc",
scrollrows: true,
loadui: 'disable',
toppager: true,
是否可以将上述所有属性放在一个公共变量中,并在所有 10 个不同的网格中重用该变量?
想法是保存一些 space 并在一个地方进行更改。
注意:我使用的是jqgrid插件4.6.0.
应用的解决方案:
将以下代码添加到我的 js 文件的顶部,并从所有 10 个 jqgrid 中删除相同的属性。干得漂亮!
//DEFAULTS
$.extend($.jgrid.defaults, {
datatype: "local",
mtype: "GET",
cmTemplate: { sortable: true, resizable: true },
height: 'auto',
altclass: '',
pgbuttons: false,
pgtext: "",
gridview: true,
loadonce: true,
shrinkToFit: false,
autoencode: true,
emptyrecords: 'No records found',
viewrecords: true,
sortorder: "desc",
scrollrows: true,
loadui: 'disable'
});
是的,您可以使用 jQuery 来完成。
jquery.extend
只需将所有 jqGrids 中相同的属性放在一个对象 defaultOptions 中。
然后就可以在specificOptions中为某个jqgrid指定具体选项了。下面的函数将特定合并到 defaultOptions 中。
如果 specificOptions 对象包含一个也在 defaultOptions 对象中的 属性,那么它将覆盖它,
否则它将把它添加到选项对象中。
var options= $.extend( true, defaultOptions, specificOptions);
我在一个 ASP.NET 网页中有 10 个 jqgrid,每个都向用户显示不同的数据。
除了 colNames、colModel、pager 和 sortname 属性外,所有其他属性都是相同的。请参阅下面的代码,
datatype: "local",
mtype: "GET",
cmTemplate: { sortable: true, resizable: true },
height: 'auto',
altRows: true,
altclass: '',
pgbuttons: false,
pgtext: "",
gridview: true,
loadonce: true,
shrinkToFit: false,
pager: gridPager,
autoencode: true,
sortname: 'Id',
width: $('.grid-wrapper').width() - 20,
emptyrecords: 'No records found',
viewrecords: true,
sortorder: "desc",
scrollrows: true,
loadui: 'disable',
toppager: true,
是否可以将上述所有属性放在一个公共变量中,并在所有 10 个不同的网格中重用该变量?
想法是保存一些 space 并在一个地方进行更改。
注意:我使用的是jqgrid插件4.6.0.
应用的解决方案:
将以下代码添加到我的 js 文件的顶部,并从所有 10 个 jqgrid 中删除相同的属性。干得漂亮!
//DEFAULTS
$.extend($.jgrid.defaults, {
datatype: "local",
mtype: "GET",
cmTemplate: { sortable: true, resizable: true },
height: 'auto',
altclass: '',
pgbuttons: false,
pgtext: "",
gridview: true,
loadonce: true,
shrinkToFit: false,
autoencode: true,
emptyrecords: 'No records found',
viewrecords: true,
sortorder: "desc",
scrollrows: true,
loadui: 'disable'
});
是的,您可以使用 jQuery 来完成。 jquery.extend 只需将所有 jqGrids 中相同的属性放在一个对象 defaultOptions 中。 然后就可以在specificOptions中为某个jqgrid指定具体选项了。下面的函数将特定合并到 defaultOptions 中。 如果 specificOptions 对象包含一个也在 defaultOptions 对象中的 属性,那么它将覆盖它, 否则它将把它添加到选项对象中。
var options= $.extend( true, defaultOptions, specificOptions);