• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    table中点击表头实现排序的功能示例介绍

    a href="javascript:setOrder();">表头名字/a>,页面中获取上次点击的表头的名称和这次点击的表头的名称做比较,如果两者相同就按原先相反的顺序排列,否则新列升序排列,

    获取排列顺序的列名及排列顺序以后,传到后台获取相应sql,添加order by 语句,完成排序功能

    排序顺序值可在form中存放在隐藏域中,思路就是这样。

    例如在使用Birt报表工具创建报表需要点击表头的名称排序的功能时,可以再表头名称处增加一个超链接,链接内容为TargetURL+表头名称 ,然后在初始化方法initialize()中判断原有的表头名称是否和传入的表头名称相同以判断升序和降序,然后获取sql,添加排序语句,完成功能。以下是我做的报表的一个实例。

    复制代码 代码如下:

    dataSetName = "fundcatagoryseasontemplate";
    sortCol = reportContext.getHttpServletRequest().getParameter("sortCol");//获取需要排序的列名
    sortDir = reportContext.getHttpServletRequest().getParameter("sortDir");//获取排列顺序
    currentURL = reportContext.getHttpServletRequest().getRequestURL()+"?"+reportContext.getHttpServletRequest().getQueryString();
    sortClause = "";
    targetURL = "";

    if(sortDir != null){
    if(sortDir.indexOf("ASC") != -1){
    sortDir = "DESC";
    }else{
    sortDir = "ASC";
    }
    }else{
    sortDir = "ASC";
    }

    if(sortCol != null sortCol.length != 0){
    sortClause = " order by " + sortCol + " " + sortDir;
    }

    reportContext.getReportRunnable().getDesignInstance().getDataSet(dataSetName).queryText += sortClause; //获取并修改底层sql语句

    if(currentURL.indexOf("__sorting=") != -1 ){
    targetURL = currentURL.substring(0,currentURL.indexOf("__sorting")-1 );
    }else{
    targetURL = currentURL;
    }

    targetURL = targetURL + "__sorting=truesortDir="+sortDir+"sortCol=";//修改url

    上一篇:JSP编译指令page、include详解
    下一篇:jsp防止跨域提交数据的具体实现
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    table中点击表头实现排序的功能示例介绍 table,中,点击,表头,实现,