The method filterBy() which is in dhtmlxgrid_filter.js


There is some wrong when I using the method filterBy() whichi is in dhtmlxgrid_filter.js, The items as follows:

var mygrid = new dhtmlXGridObject(‘mygridbox’);


mygrid.enableDistributedParsing(true, 20, 100);


var finished = true;

function search(searchKey) {

if(finished ) {

    finished = false; mygrid.filterBy(i, searchKey); finished = true;



First time: the data in the grid which satisfied the first  search  conditon is large

Second time: the data in the grid which satisfied the second search condition is null

operator order:

Before the first search result load finished, I call the second search.    normal : the search result should be null .    But the result is : The grid’s data load again(then the grid’s data is the same as Init).

Is there any event which can make sure : start the second search after the first search finished. Because when I catch the event at outside, but It doesn’t work[example:search()].

Could you give me some advise?


Best wishes !







When distributed mode used, if you issue first filtering attempt before all data parsed - filters will lock incorrect dataset as initial one, which will lead to incorrect filtering results.
You can
a) use smartRendering mode which has not any conflicts with filtering functionality ( actually grid filters faster in such mode )
b) adjust you code in such way, that first filtering executed only after all data parsed ( after onXLE event )