|
<script>
function onFiltering(e) {
e.preventDefaultAction = true;
onFilter(e);
}
var onFilter = debounce(function (e) {
var data = new ej.data.DataManager({ url: 'https://js.syncfusion.com/ejServices/Wcf/Northwind.svc/Customers/', adaptor: new ej.data.ODataAdaptor(), crossDomain: true });
var query = new ej.data.Query();
// frame the query based on search string with filter type.
query = (e.text !== '') ? query.where('CompanyName', 'startswith', e.text, true) : query;
e.updateData(data, query);
}, 3000);
function debounce(func, wait, immediate) {
var timeout;
return function () {
var context = this, args = arguments;
var later = function () {
timeout = null;
if (!immediate) func.apply(context, args);
};
var callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later, wait);
if (callNow) func.apply(context, args);
};
};
</script> |