【发布时间】:2010-11-20 11:20:15
【问题描述】:
这是我之前关于将列添加到基于 jqGrid 的表中的问题的补充。这是我的新js代码:
var col_names = ['First', 'Second', 'Third', 'Fourth', 'Fifth'];
var col_model = [
{name:'invid', index:'invid', width:100},
{name:'invdate', index:'invdate', width:90},
{name:'amount', index:'amount', width:80, align:'right'},
{name:'tax', index:'tax', width:80, align:'right'},
{name:'total', index:'total', width:80, align:'right'},
];
function createGrid()
{
var handle = $("#list").jqGrid({
url:'data.xml',
datatype: 'xml',
mtype: 'GET',
colNames: col_names,
colModel : col_model,
});
}
现在我在加载文档后调用createGrid();,一切正常。现在我想添加一个新列(带有空数据)并重新加载 jqGrid:
$("#add_column").click(function() {
$('#list').trigger("DestroyGrid"); // Also tried UnloadGrid
col_names.push('New');
col_model.push({name: 'test', index: 'test', width: 100});
createGrid(); // And recreate grid
});
但是什么也没发生,为什么?
UPD
$("#add_column").click(function() {
col_names.push('New');
col_model.push({name: 'test', index: 'test', width: 100});
$('#list').trigger("reloadGrid");
});
同样的情况
UPD2 我试过这些:
ajaxGridOptions: {cache: false},
loadonce:false
没有改变现状。
【问题讨论】:
-
ajaxGridOptions: {cache: false}和loadonce:false是默认设置,他们无能为力。如果您的回答对您没有帮助,请使用您使用的 HTML 代码和测试 XML 发布完整的代码示例,我会对其进行修改以使其正常工作。
标签: javascript jqgrid