+ -
当前位置:首页 → 问答吧 → 排序第一次降序再点击变升序

排序第一次降序再点击变升序

时间:2011-12-15

来源:互联网

一个按钮排序第一次点击升序第二次点击变降序再次点击时升序
怎么做啊 asp的

作者: liwenbi   发布时间: 2011-12-15

该回复于2011-12-15 17:00:40被管理员删除

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
#2楼 得分:0回复于:2011-12-15 16:53:44
在拼查询语句时,用一个开关,一开始设置排序方式为 ASC,再次点击时,把这个字符串改为 desc 就行了,以后每次根据这个改变.

作者: yzdjody   发布时间: 2011-12-15

用一个属性记录排序方式
C# code

 public SortDirection GridViewSortDirection
    {
        get
        {
            if (ViewState["sortDirection"] == null)

                ViewState["sortDirection"] = SortDirection.Ascending;

            return (SortDirection)ViewState["sortDirection"];
        }
        set { ViewState["sortDirection"] = value; }
    }

if (GridViewSortDirection == SortDirection.Ascending)                      //设置排序方向
        {
            GridViewSortDirection = SortDirection.Descending;
            Init(gvQueryLog.PageIndex, sortExpression + "  DESC");
        }
        else
        {
            GridViewSortDirection = SortDirection.Ascending;
            Init(gvQueryLog.PageIndex, sortExpression + "  ASC");
        }

作者: qianjin036a   发布时间: 2011-12-15

引用 2 楼 qianjin036a 的回复:

在拼查询语句时,用一个开关,一开始设置排序方式为 ASC,再次点击时,把这个字符串改为 desc 就行了,以后每次根据这个改变.

同意楼上的,设置一个变量,用get或者post传送,
比如:
dim orders
orders = "desc" '默认排序
sqlstr = "select * from table order by id "&orders
点击按钮后传送值"asc"

作者: qiuyu820968   发布时间: 2011-12-15

如果就是一页面的数据量。就不要来回查询了,耽误效率。在生成页面时把数据放在JS数组里。根据按钮排序的选择,重新生成显示的列表即可。

作者: zy0071982   发布时间: 2011-12-15

而且找一下数据列表控件。很多都支持排序,可以对任意列排序。

作者: theforever   发布时间: 2011-12-15