dxDataGrid – 如何刷新小部件

当ı点击按钮,不工作刷新。如果目的是添加到数据库按钮按下按钮来到屏幕。 但是没有更新。 我用ajax创建了一个datagrid。 我还在ViewModel中编写了刷新function。这可能是不更新的原因。 我的数据是json。

$.ajax({ type: "GET", url: "https://js.devexpress.com/Demos/WidgetsGallery/data/orderItems" success: function (msg, result, status, xhr) { var obj = jQuery.parseJSON(msg); $("#gridContainer").dxDataGrid({ dataSource: obj, filterRow: { visible: true}});}}); var viewModel = { refresh: function () { var dataGrid = $('#gridContainer').dxDataGrid('instance'); dataGrid.refresh();}}; return viewModel; 
 

正如Alex所说,你的ajax只发生了一次。 因此,最好使用DataSource配置对象来加载数据:

 var dataSource = { load: function() { var items = $.Deferred(); $.ajax({ type: "GET", url: "https://js.devexpress.com/Demos/WidgetsGallery/data/orderItems", success: function(result) { items.resolve(result.items); } }); return items.promise(); } }; $("#gridContainer").dxDataGrid({ dataSource: dataSource, //... }); 

然后,如果调用dxDataGrid的refresh()方法,将重新加载数据源。

演示

请注意,如果您的数据源动态变化,则刷新方法非常有用。