Я реализовал таблицу JQGrid с loadonce:true
так:JQGrid и Результат поиск
jQuery("#list").jqGrid({
datatype: 'jsonstring',
datastr : maVarJSON,
colNames:['AA','BB', 'CC','DD','EE','FF'],
colModel :[
{name:'invid', index:'invid', align:'center'},
{name:'invdate', index:'invdate'},
{name:'amount', index:'amount', align:'right'},
{name:'tax', index:'tax', align:'right'},
{name:'total', index:'total', align:'right'},
{name:'note', index:'note'}
],
pager: jQuery('#pager'),
rowNum: 50,
rowList: [50, 100],
caption: '',
height: 470,
width: 1000,
loadonce: true
});
jQuery("#list").jqGrid('filterToolbar',{afterSearch: function(){
var rowsFiltered = jQuery("#list").getRowData();
}});
Моей проблема:
У меня есть 500 строк в maVarJSON
. Я вижу 50 строк и 10 страниц.
Я решил фильтровать мою колонку AA. Фильтр принимает только 100 строк. Итак, я вижу 50 строк и 2 страницы.
Я бы получил 100 строк данных. (Метод jQuery("#list").getRowData()
дать мне только 50 первых данных по строкам.)
Благодарности
Спасибо за ваш ответ. Фактически, объекты (представленные строками; 1 объект = 1 строка) также отображаются в div-карте google в моем приложении. Поэтому я хотел показать/скрыть эти объекты, которые принимают/не принимают фильтр. – livoo
@ user1268560: Извините, но я до сих пор не понимаю, чего вы хотите. Чтобы «принять/не принимать фильтр», вы должны использовать, вероятно, [beforeSearch] (http://www.trirand.com/jqgridwiki/doku.php?id=wiki:toolbar_searching#calling_convention), а не 'afterSearch'. Вы можете анализировать * фильтр *, а не данные. См. Пример в [ответе] (http://stackoverflow.com/a/4184035/315935). Если у вас есть проблемы с 'rowNum: 50', вы можете увеличить значение. В любом случае я бы рекомендовал вам добавить «gridview: true» для лучшей производительности сетки. – Oleg
Я добавил gridview в true. Этот пример помог мне сделать то, что я хотел. Большое спасибо. – livoo