Hi,
The examples provided filters data already present in ViewBag.dataSource. How we can make AJAX calls to fetch data from server using DataManager/Web API & rules updated by QueryBuilder?
function updateRule(args) {
var dataManagerQuery
var qryBldrObj = ej.base.getComponent(document.getElementById("querybuilder"), 'query-builder');
var predicate = qryBldrObj.getPredicate(args.rule);
if (ej.base.isNullOrUndefined(predicate)) {
dataManagerQuery = new ej.data.Query().select(['ShipCity', 'CustomerID', 'OrderID', 'EmployeeID']);
} else {
dataManagerQuery = new ej.data.Query().select(['ShipCity', 'CustomerID', 'OrderID', 'EmployeeID']).where(predicate);
}
var grid = document.getElementById("Grid").ej2_instances[0];
var fltrDataSource = [];
new ej.data.DataManager(@Html.Raw(JsonConvert.SerializeObject(@ViewBag.dataSource)))
.executeQuery(dataManagerQuery)
.then(function (e) {
e.result.forEach(function (data) {
fltrDataSource.push(data);
});
});
grid.dataSource = fltrDataSource;
grid.refresh();
}
Hi Abaid,
Sorry for the delay. We have confusion on your reported query. The ViewBag is used for value transfer from controller to views and using ajax call also we have fetch data from controller to view. Both are some operations. Can you please share the exact requirement with more details.
Regards,
YuvanShankar A