首先,我想提到我在jqxgrid中使用angular2。
我得到了jqxgrid,它显示动态数据,工作正常。但是,当我试图刷新网格或重新绑定它时,网格会显示首次加载的数据,而不是刷新的数据。
下面给出了在jqxgrid中显示数据的代码:
let url = "http://xxxx" + parameter1 + "xxxx" + parameter2;
let sourceGrid =
{
datatype: "json",
datafields: [{ "name": "name", "type": "string" },...],
url: url
};
let dataAdapter = new $.jqx.dataAdapter(sourceGrid, {
downloadComplete: (data, status, xhr) => { },
loadComplete: data => { },
loadError: (xhr, status, error) => { }
});
this.settings = {
width: 1500,
source: dataAdapter,
....,
columns:[{ "text": "name", "datafield": "name"},...]
}
this.myGrid.createWidget(this.settings);到目前为止,一切都很顺利。在单击按钮事件时,我通过传递参数获得数据,即dataAdapter中有新数据,但jqxgrid并不是重新绑定或刷新新数据。到目前为止,我已经尝试过:
...
dataAdapter.dataBind();
this.myGrid.source = sourceGrid;
this.myGrid.updatebounddata();
...我获得了使用dataAdapter绑定的新数据,但是jqxGrid仍然显示旧数据。我尝试过refreshData()、refresh(),尝试使用新适配器,但是网格是刷新的。不确定顺序。
有人能帮我解决这个问题吗?
发布于 2016-10-12 08:23:16
我找到了用动态数据刷新网格的解决方案:
this.mygrid.setOptions({source:{}}); or new DataAdapter谢谢jQWidgets团队
https://stackoverflow.com/questions/39916984
复制相似问题