Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
620
Change 'add condition' drop down value
posted

Hello, I've a grid with advanced filtering and in some cases I add filters programatically like this:

function createFilters(criteria) {
    var colSettings = $grid.igGridFiltering("option", "columnSettings"),
        filters = [];
    for (var i = 0; i < colSettings.length; i++) {
        var e = colSettings[i];
        if (e.allowFiltering) {
            filters.push({
                fieldName: e.columnKey,
                expr: criteria,
                cond: "contains",
                logic: "OR"
            });
        }
    });
    $grid.igGridFiltering("filter", filters, true);
}

The problem is that the default value for the 'add condition' drop down is "ALL" and not "ANY". So if the user opens the dialog and applies it without changing anything, the results will change (I build the filters using OR logic, and the dialog specifies AND logic).

I want to be able to change programatically the selected value in 'add condition' drop down to "ANY". How can I do this?

  • 29417
    Verified Answer
    Offline posted

    Hello intecomp, 

    Thank you for posting in our forum! 

    To change the selected value for the applied condition in the advanced filter dialog you can use the filterDialogContentsRendered event, which fires after the content of the dialog are rendered and ready to be manipulated (http://help.infragistics.com/jQuery/2015.1/ui.iggridfiltering#events:filterDialogContentsRendered ). In that event handler you can get the select element  from the dialog that determines the applied condition (Any or All) and set its value.

    For example:

    filterDialogContentsRendered: function (evt, ui) {

                                                                    var dialog = ui.dialogElement;

                                                                    var conditionList = $(dialog).find("div.ui-iggrid-filterdialogaddconditionlist > select");

                                                                    conditionList.val("any");

                                                    } 

    Let me know if you have any questions or concerns regarding this.

     

    Best Regards,

    Maya Kirova