Я использую jqwidgets jqxgrid для отображения записей в сетке.мое требование - добавить начальный фильтр при загрузке страницы.поэтому я создал функцию для начального фильтра и использовал ее в функции готовности.но когда страница загружается, возникает два запроса: один - по умолчанию, без начального фильтра, а второй - с начальными данными фильтра.поэтому, почему запрос вызывается дважды, я делаю неправильное связывание, пожалуйста, помогите.
var source =
{
datafields:
[
{name: 'id', type: 'number'}
........
],
url: 'http://testapi-application.localhost.com/cases/search',
datatype: 'json',
pagesize: 20,
type: 'post',
root: 'Rows',
cache: false,
sortcolumn: 'id',
sortdirection: 'desc',
data: {
params: basicFilters,
},
filter: function () {
$('#jqxgrid').jqxGrid('updatebounddata', 'filter')
},
sort: function () {
$('#jqxgrid').jqxGrid('updatebounddata', 'sort')
},
beforeprocessing: function (data) {
if (data != null && data.length > 0) {
source.totalrecords = data[0].TotalRows
}
},
pager: function (pagenum, pagesize, oldpagenum) {
$('#jqxgrid').jqxGrid('updatebounddata', 'data')
},
}
Ниже приведена функция addfilter для начального фильтра
var addfilter = function () {
var filtergroup = new $.jqx.filter();
var filter_or_operator = 1;
var filtervalue = 'In store awaiting dispatch to repairer';
var filtercondition = 'equal';
var filter1 = filtergroup.createfilter('stringfilter', filtervalue, filtercondition);
filtergroup.addfilter(filter_or_operator, filter1);
$("#jqxgrid").jqxGrid('addfilter', 'repairer_status', filtergroup);
$("#jqxgrid").jqxGrid('applyfilters');
}
var dataAdapter = new $.jqx.dataAdapter(source)
//, которая называется jqxgrid
$('#jqxgrid').jqxGrid(
{
source: dataAdapter,
altrows: true,
width: 1106,
autoheight: true,
sortable: true,
filterable: true,
showfilterrow: true,
showsortmenuitems: false,
pageable: true,
virtualmode: true,
rendergridrows: function (obj) {
return obj.data
},
ready: function () {
addfilter()
},
sorttogglestates: 1,
autoshowloadelement: false,
columnsresize: true,
autorowheight: true,
columnsheight: 40,
enablebrowserselection: true,
columns: [ ... ]
})
помогите мне в этом, как загрузить сетку с начальным фильтром при загрузке страницы.