Save/Reapply filters after load?

Is there a good way to reapply filters after loading?

I have data in a grid and after a delete/insert it seems the dropdown filters reset but the text box filters do not reset.



I’d like to ideally save all of the filters, reload the grid, then reapply the filters that are still valid (Of course a dropdown filter might no longer be valid if you delete the last record containing the value you were filtering by)





Any ideas?

Thanks

There are two ways

a) you can use onFilterStart event

var f_ind=[];
var f_data=[];
mygrid.attachEvent(“onFilterStart”,function(ind,data){
f_ind=ind;
f_data = data;
return true;
});

now , after reloading you can call
grid.filterBy(f_ind,f_data);
to reapply last used filters.

b) you can use
grid.getFilterElement(index)
to access filtering element (selectbox or input) and get|set its value when necessary


I don’t know how well that approach works. 



I save the filters in the filterStart, then after the load, the filters are removed from view (I still dont understand why this is built-in, load shouldn’t even touch filters unless the new grid contents invalidated them for some reason). 



Afterwards, I reload the filters from f_ind and f_data, then call filterBy(f_ind, f_data), which actually works and shows the correct data… But then if I take a filter with a value and set it to nothing, the grid shows nothing at all

the filters are removed from view
If you are reloading only data ( not the structure of grid ) the values of filters must be preserved ( there was a problem with select box , but it resolved in latest build - updated js file sent by email )

>>But then if I take a filter with a value and set it to nothing
What do you mean by “nothing”? Grid expects that not used filters provides an empty string value.


Could you resend the file, and name it .ngzip



I didn’t receive the email.



 



I did use onFilterStart to save the filters, then after the load event is finished I reload those filters, and call filterBy
By nothing I mean, I reload the values of the filter, then apply those filters.  But then if I take a filter with a value already set and unset it from the GUI, the grid shows no data… Maybe there is an error in the way I am saving, reloading, and re-applying the filter…



 



 


Don’t know if this makes any sense… but the select filter still resets in certain situations.  It works fine on updates, but when adding or deleting rows they are reset for some reason (it doesn’t happen on all inserts or deletes either… sometimes it works sometimes it doesn’t)


Also to add more info on how this happens.  I load a grid with a lot of different data (select filters will have many possible values).  Then I might do another load, but it will be with more refined data (select filters will have fewer possible values).  Then I apply some filters, and add a row.  After that, the select filters are reset…  Maybe the fact that there are new filter choices in the grid is messing things up.