zoukankan      html  css  js  c++  java
  • 为Flexigrid添加获取整个数据集的方法

    Flexigrid是一款很漂亮的Jquery的表格插件,具体的信息大家可以上网上查一查。由于公司要用,所以研究了好半天这个东西,由于官方并没有提供给完整的文档,所以研究起来很痛苦~~~

    公司要求做到客户端界面上的增删查改,所以第一步就是如何获取到Flexigrid的数据集,只有获取到了数据集,才能对数据集进行操作。琢磨了源码好久,终于琢磨出来怎么做了。

     

    首先我们要改源码,打开从官网上下载的flexigrid.js文件,定位到615行(有可能会不同),有如下的代码:

     

    $.ajax({
            type: p.method,
            url: p.url,
            data: param,
            dataType: p.dataType,
            success: function(data){
              g.addData(data);
            },
            error: function(data) { try { if (p.onError) p.onError(data); } catch (e) {} }
          });

     

    将其改成:

     

    $.ajax({
            type: p.method,
            url: p.url,
            data: param,
            dataType: p.dataType,
            success: function(data){
              g.addData(data);
              //---Coldfox's code
              //use this you can get all data from grid
              p.data=data;
              //---Coldfox's code end
            },
            error: function(data) { try { if (p.onError) p.onError(data); } catch (e) {} }
          });

     

    其实就添加了一句:p.data=data;

    然后我们为这个插件添加一个新的方法。定位到文件的末尾,添加如下函数:

     

    //Coldfox's code

    $.fn.flexGetData = function() { // function to get data from grid
      var griddata = {total:1,page:1,rows:[]};
      this.each( function() {
       if (this.grid)    
        griddata = this.p.data;
      });
      return griddata;

     };
    这样,我们在html页面中就可以获取到数据集了,只要调用新添加的方法即可。
  • 相关阅读:
    ajax提交转码解码
    关于idea开发工具常用的快捷键
    oracle 查询某个时间段数据
    hibernate : object references an unsaved transient instance 问题
    log4j日志
    JS关键字 import
    代码正常,junit却报错原因及解决方法
    hdu 5868 Polya计数
    hdu 5893 (树链剖分+合并)
    hdu 5895 广义Fibonacci数列
  • 原文地址:https://www.cnblogs.com/chengulv/p/2230640.html
Copyright © 2011-2022 走看看