通过页面刷新对客户端进行排序

时间:2013-06-05 06:29:24

标签: javascript jquery asp.net

我完成了gridview的排序。它工作得很好,但我每60秒刷新一次页面。所以当我把Asc排序到Desc。该页面保留在Desc页面中,但在页面刷新后,网格将转到Asc方向。但是当页面加载时,我希望保持最后的排序方向。可能吗?我的分类代码是:

   $(document).ready(function () {
        $.tablesorter.addParser({
            id: 'amount',
            is: function (s) {
                return false;
            },
            format: function (s) {
                return s; 
            },
            type: 'numeric'
        });

        $.tablesorter.addParser({
            id: "commaDigit",
            is: function (s) {
                return false;
            },
            format: function (s) {
                return s;
            },
            type: "numeric"
        });

        $.tablesorter.addParser({
            id: 'balance',
            is: function (s) {
                return false;
            },
            format: function (s) {
                return s;
            },
            type: 'numeric'
        });


        $(function () {
            $("#<%=gvCustomerTranInfo.ClientID%>").tablesorter({
                headers: {
                    1: {
                        sorter: 'commaDigit'
                    },
                    3: {
                        sorter: 'amount'
                    }
                }
            });
            SetDefaultSortOrder();
        });
    });



    function Sort(cell, sortOrder) {
        var sorting = [[cell.cellIndex, sortOrder]];
        $("#<%=gvCustomerTranInfo.ClientID%>").trigger("sorton", [sorting]);
        if (sortOrder == 0) {
            sortOrder = 1;
            cell.className = "sortDesc";
        }
        else {
            sortOrder = 0;
            cell.className = "sortAsc";
        }
        cell.setAttribute("onclick", "Sort(this, " + sortOrder + ")");
        cell.onclick = function () { Sort(this, sortOrder); };
        document.getElementById("<%=pnlCustomerTranInfo.ClientID %>").scrollTop = 0;
    }

    function SetDefaultSortOrder() {
        var gvHeader = document.getElementById("dummyTranHeader");
        if (gvHeader != null) {
            var headers = gvHeader.getElementsByTagName("TH");
            for (var i = 0; i < headers.length; i++) {
               headers[i].setAttribute("onclick", "Sort(this, 1)");
                headers[i].onclick = function () { Sort(this, 1); };
                headers[i].className = "sortDesc";
            }
        }
    }

我使用asp.net

在客户端对代码进行排序

1 个答案:

答案 0 :(得分:0)

如果刷新它会回到服务器端,你需要给页面一个关于排序顺序的提示。

您可以添加查询字符串参数,以便保持刷新状态。