jQWidgets Forums

jQuery UI Widgets Forums Grid IE/Edge performance issues applying custom filters

This topic contains 2 replies, has 2 voices, and was last updated by  bjpetal 7 years, 3 months ago.

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author

  • bjpetal
    Participant

    Hello, I have a grid with about 10 columns, and in this instance 47 rows. I have a custom filter control, bound to an integer column – this is implemented as a jqxdropdownlist with checkboxes(Similar to the default checkedList implementation in the grid). On the checkChange event, I am clearing the filter for that column, and applying a new filter based on user selections.

    This is happening pretty fast on Chrome/Firefox – 150-250 ms, so there isn’t a lot of delay as the user is clicking different options. ON IE/Edge this is taking more like a full second:

    
    propertyGrid.jqxGrid('removefilter', 'h_cat_id');
    propertyGrid.jqxGrid('addfilter', 'h_cat_id', filtergroup);
    propertyGrid.jqxGrid('applyfilters');
    

    I have tried wrapping these in the beginUpdate, and endUpdate methods to see if I could get any benefits there, but I get an exception:
    Unable to get property ‘visiblerecords’ of undefined or null reference.

    Not sure if it would make a difference, but the filtergroup contains anywhere from 1 to 20 integers, and is initialized like this:

    
    var filtertype = 'numericfilter';
    var filtergroup = new $.jqx.filter();
    for (var i = 0; i < filterItems.length; i++) {
        var filter_or_operator = 1;
        var filtervalue = filterItems[i];
        var filtercondition = 'equal';
        var filter = filtergroup.createfilter(filtertype, filtervalue, filtercondition);
        filtergroup.addfilter(filter_or_operator, filter);
     }
    
    

    Performance comparison:

    Chrome
    removefilteroncol: 76.9609375ms
    applyingfilters: 123.57177734375ms

    Firefox
    removefilteroncol: 112.34ms
    applyingfilters: 117.58ms

    IE
    removefilteroncol: 406.349ms
    applyingfilters: 406.552ms

    Edge:
    removefilteroncol: 385.525ms
    applyingfilters: 575.41ms

    Any ideas why this would be 4 – 5 times slower in Microsoft browsers? Is there anything I can do to increase performance here?

    Thank you!


    Stanislav
    Participant

    Hello bjpetal,

    Edge and IE are slower by default than FireFox and Chrome.
    Not much can be done about that.

    We can try to optimize your example. But for that, we will need a bit more information.
    Can you please provide us with a full example of your case?
    How do you initiate the grid and everything else, that might be of use for us?

    Best Regards,
    Stanislav

    jQWidgets Team
    http://www.jqwidgets.com/


    bjpetal
    Participant

    Stanislav – emailed you with full example.

    Thanks!

Viewing 3 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic.