`
baukh789
  • 浏览: 27652 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

listManager使用详解

阅读更多
原文链接http://www.lovejavascript.com/#!zone/blog/content.html?id=9
插件首页:http://www.lovejavascript.com/#!plugIn/listManager/index.html
首先介绍一下该插件的使用场景和实现功能

使用场景

   适用于管理平台的数据展示列表,通过该插件可以更简约的实现一些前端交互及与列表相关的功能实现。

功能实现

   1、列项的宽度调整
   2、列位置的顺序调整
   3、列的展示与隐藏
   4、本地存储机制,插件会对用户已经调整的宽度、列的展现状态等信息进行存储,再次进入时会根据存储
   5、根据列进行排序,支持单列与多列的排序
   6、分页功能,含常用的分页功能
   7、国际化,默认支持中英文两种语言,可通过配置项进行其它语种的设定。进行回显。
以上的介绍可能过于文字化,接下来依次对这些功能进行code展示。
 
   最简易的实现
   $('table').listManager();
   对的,就是这么简单的一句代码就可以实现刚才功能介绍中所示的1-4项。
   这四项都是插件默认支持的项,其它项则需要借助于配置项。
  

配置项介绍:

  配置分为两种;具体的参数项请参考http://www.lovejavascript.com/#!plugIn/listManager/index.html中的参数说明。
  针对于单表的配置:以参数传递的形式进行配置。
  ex: $('table').listManager({i18n: 'en-us'})
  针对于全局表格的配置:通过全局配置变量listManagerConfig或$.fn.listManager.defaults进行设定。
  ex: window.listManagerConfig = {i18n: 'en-us'};
  ex: $.fn.listManager.defaults = {i18n: 'en-us'};
 
功能介绍中的前四项为纯粹的前端特效,后三项为存在数据交互,正因为这种差异,后三项需要进行配置才可以使用。 下面进行分别介绍

国际化实现:

   国际化相对于前四项的纯前端特效而言,需要进行一些简单的配置。
   通过参数i18n进行配置使用的语种,默认使用的是中文简体
   通过textConfig配置插件中的文本信息及各语种所对应的文字,自带中文简体与美式英语两个语种的文本。
   如仅需要中英两种语种,只需对参数i18n进行配置即可。
   如需扩展可对textConfig进行配置,textConfig所支持的默认项如下,依照默认项的格式进行配置将会对默认项进行覆盖。
   ex: $('table').listManager({
             i18n: 'en-us',
            'config-action': {
                'zh-cn':'配置表格',
                'en-us':'The configuration form'
            }
            ,'first-page': {
                'zh-cn':'首页',
                'en-us':'first'
            }
            ,'previous-page': {
                'zh-cn':'上一页',
                'en-us':'previous'
            }
            ,'next-page': {
                'zh-cn':'下一页',
                'en-us':'next '
            }
            ,'last-page': {
                'zh-cn':'尾页',
                'en-us':'last '
            }
            ,'dataTablesInfo':{
                'zh-cn':'此页显示 {0}-{1} 共{2}条',
                'en-us':'this page show {0}-{1} count {2}'
            }
            ,'goto-first-text':{
                'zh-cn':'跳转至',
                'en-us':'goto '
            }
            ,'goto-last-text':{
                'zh-cn':'页',
                'en-us':'page '
            }
       });

分页功能实现:

  分页功能默认处于关闭状态,通过参数supportAjaxPage:true进行开启,除止之外还需要配置pageCallback,通过参数名称就可以看出来这是在触发分页后的一个回调函数,当然也可以叫做分页事件。该配置项接收分页事件,在这个函数中会传入一个参数,该 参数包含一些必要的分页信息。
具体配置如下:  
  ex: $('table').listManager({
  supportAjaxPage: true,
    pageCallback: function(query){
    //query 中包含当前的分页信息:cPage(当前页),pSize(每页显示条数)
        //在该callback中 对列表数进行重新请求 并对列表及分页进行数据重填
        //1、请求后端数据
        // $.ajax() ....
        //2、列表数据重填
        var thtml = ''; //拼装好的数据
        var _tbody = $('table tbody');
         _tbody.html(thtml)           
        //3、分页数据重新渲染
        this.resetPageData(table, pageData);
        /*
      其中pageData,需要通过返回数据进行设置,存在四个值,如下所示:  
        pageDate = {        
            tPage: 10,//总页数
            cPage: 1,//当前页
            pSize: 10,//每页显示条数
            tSize: 100//总条数
        }
        */
    }
  });

排序功能实现:

   排序与分页类似,不再进行描述,配置如下:

   ex: $('table').listManager({
  supportSorting: true,
isCombSorting: true,
    sortUpText:'up',   //配置升序排序的文本信息
    sortDownText:'down', //配置降序排序的文本信息
    sortingCallback: function(query){
    //query 中包含当前的排序信息
        //格式为{th-name: sortUpText/sortDownText}  th-name为th上配置的th-name,
        //在该callback中 对列表数进行重新请求 并对列表及分页进行数据重填
        //1、请求后端数据
        // $.ajax() ....
        //2、列表数据重填
        var thtml = ''; //拼装好的数据
        var _tbody = $('table tbody');
         _tbody.html(thtml)           
        //3、分页数据重新渲染
        this.resetPageData(table, pageData);
        /*
      其中pageData,需要通过返回数据进行设置,存在四个值,如下所示:  
        pageDate = {        
            tPage: 10,//总页数
            cPage: 1,//当前页
            pSize: 10,//每页显示条数
            tSize: 100//总条数
        }
        */
    }
  });
分享到:
评论
2 楼 baukh789 2017-10-23  
该文过期
已升级为GridManager
http://gridmanager.lovejavascript.com/api/index.html
1 楼 baukh789 2017-10-23  
已升级为GridManager
http://gridmanager.lovejavascript.com/api/index.html

相关推荐

    python 多进程共享全局变量之Manager()详解

    例如,使用Manager()创建的list对象时,如果直接对list中的字典进行修改,Manager()并不会感知到list中元素内容的变化。这是因为Manager()无法监测可变对象值的修改。为了避免这种情况,应当使用__setitem__方法来...

    Java Todo List Manager-开源

    【Java Todo List Manager - 开源应用详解】 Java Todo List Manager 是一个使用Java技术构建的开源Web应用程序,专门设计用于管理个人或团队的待办事项。它允许用户创建、编辑和跟踪任务,同时还支持任务列表的...

    Ocean12 Mailing List Manager Pro v1.04 -ASP源码.zip

    本篇文章将深入探讨"Ocean12 Mailing List Manager Pro v1.04"这款基于ASP的邮件列表管理系统的源码,帮助开发者理解其工作原理,以及如何利用ASP进行高效的数据管理和用户互动。 "Ocean12 Mailing List Manager ...

    Android入门到精通详解(完整书签)

    - **列表(List)视图组**:介绍了ListView及其适配器的使用。 - **使用Tab组织UI**:讨论了如何使用TabHost来实现标签式导航。 ##### 第9章:2D图形接口的使用 - **使用2D图形接口的程序结构**:介绍了Canvas类和...

    rman备份恢复详解

    2. 使用命令“Archive log list”查看当前数据库是否处于自动归档模式。如果不是,则需要继续操作。 3. 关闭数据库,使用命令“shutdown immediate”。 4. 启动到mount状态,使用命令“startup mount”。 5. 使用...

    Linux RPM 命令参数使用详解.docx

    ### Linux RPM 命令参数使用详解 #### RPM 命令概述 RPM(Red Hat Package Manager)是用于管理软件包的一种工具,最初由 Red Hat 开发,但随后也被其他 Linux 发行版所采用。它支持两种类型的安装包:二进制包...

    SGLM - SquidGuard List Manager-开源

    **SGLM(SquidGuard List Manager)详解** SGLM,全称为SquidGuard List Manager,是一款开源软件,专为管理和维护SquidGuard的禁止访问列表而设计。SquidGuard是一款强大的代理服务器过滤器,常用于网络访问控制,...

    RMAN备份命令详解

    RMAN备份命令详解 RMAN(Recovery Manager)是Oracle数据库备份和恢复的工具,提供了多种备份方式和恢复选项。下面是RMAN备份命令的详细解释: 一、切换服务器归档模式 在开始备份之前,需要切换服务器到归档模式...

    redis-desktop-manager

    **RedisDesktopManager详解** RedisDesktopManager是一款专为Redis数据库设计的高效、易用的可视化管理工具,它使得在开发和调试过程中对Redis数据库的操作变得更加直观和便捷。由于Redis通常部署在Linux环境中,...

    PoolManager对象池插件

    《PoolManager对象池插件详解及实战应用》 在Unity游戏开发中,高效管理资源是提升游戏性能的关键一环。PoolManager对象池插件正是为了实现这一目标而设计的,它通过复用游戏对象,避免频繁创建和销毁,极大地提高...

    Tomcat 配置技巧精华详解分析

    重启Tomcat后,可以通过http://localhost/manager/list或http://localhost/manager/html/list访问管理界面。 3、其他配置技巧 - **日志配置**:在`conf/logging.properties`中调整日志级别和输出位置,以获取更...

    oracle rman命令详解

    RMAN (Recovery Manager) 是 Oracle 提供的一种强大而灵活的工具,主要用于数据库备份与恢复。RMAN 支持多种类型的命令,主要包括独立命令和作业命令。 - **独立命令**:这类命令可以直接单独执行,例如 `BACKUP`、...

    Tomcat manager 配置.docx

    《Tomcat Manager配置详解》 在日常的IT运维工作中,频繁地进行应用发布往往是一项繁琐的任务,特别是当应用服务是Tomcat,且服务器系统为Windows 2003时,远程登录、拷贝文件、重启服务等步骤确实让人头疼。然而,...

    NVM(NodeJS version manager)

    **NVM(Node.js Version Manager)详解** NVM,全称是Node Version Manager,是一款用于管理Node.js版本的工具。在开发过程中,我们可能需要在不同的项目之间切换不同的Node.js版本,而NVM正是为此而生,它允许你在...

    linuxRPM命令详解

    ### Linux RPM 命令详解 #### 概述 RPM (Red Hat Package Manager) 是一个流行的 Linux 软件包管理系统,最初由 Red Hat 开发,后来被多个 Linux 发行版采用,如 Fedora、Mandriva、SUSE 和 Yellow Dog 等。RPM 的...

    linux详解.pdf

    首先,你需要编辑/etc/apt/source.list文件,更新软件包列表,通过运行`sudo apt-get update`。接着,你可以安装所需软件,例如MySQL服务器和客户端,Apache2 web服务器,PHP5以及相关模块,使用命令如`sudo apt-get...

    Another-Redis-Desktop-Manager.1.4.2.zip

    《Redis桌面管理器Another-Redis-Desktop-Manager详解》 Redis,全称为Remote Dictionary Server,是一种开源、高速、支持网络的键值存储数据库,广泛应用于缓存、消息队列、数据结构服务等领域。为了方便开发者对...

Global site tag (gtag.js) - Google Analytics