Sorting a Filtered Grid

I’m trying to sort a grid after filtering has been applied to the grid. When I sort from DESC to ASC it works fine, but after that it is stuck on ASC and the grid won’t send anything but ASC for the direction parameter for the OnBeforeSort event handler.

Here are the event handlers for sort and filtering, This is for remote sorting and filtering


function OnBeforeSort(ind, type, direction)
{
    sortDirection = direction;
    objBrowseList.clearAll();
    var columnId = objBrowseList.getColumnId(ind);
    sortColumn = columnId;
    // load a new dataset from the server, with necessary order
    if (doFiltering == false)
    {
        objBrowseList.load("BrowseListJsonData.aspx?dir=" + direction + "&column=" + columnId, 'json');
    }
    else
    {
        OnFilterStart(filterIndexes, filterValues);
    }

    objBrowseList.setSortImgState(true, ind, direction);
    if (doGrouping == true)
    {
        objBrowseList.groupBy(ind);
    }

    return false;
}

function OnFilterStart(indexes, values)
{
    filterIndexes = indexes;
    filterValues = values;
    doFiltering = true;
    var count = 0;
    var filteredColumns = '[';

    for (var i = 0; i < indexes.length; i++)
    {
        if (values[i] == '') { continue; }

        if (count > 0) { filteredColumns += ','; }
        filteredColumns += "{'id':'" + objBrowseList.getColumnId(i) + "', 'value':'" + values[i] + "'}";
        count++;
    }
    filteredColumns += ']';

    if (filteredColumns == '[]')
    {
        filteredColumns = '';
        doFiltering = false;
    }

    SatuitCRMWeb.BrowseList.DoGridFilter(filteredColumns, sortColumn, sortDirection, function(response)
    {
        objBrowseList.clearAll();
        objBrowseList.parse(response, 'json');

    });
}