• 为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页面中就可以获取到数据集了,只要调用新添加的方法即可。
  • 相关阅读:
    Unity--------------------万向锁的概念
    unity--------prefab嵌套prefab
    ListView嵌套 EditText的光标不显示
    maven clean package 时出现Failed to read artifact descriptor for的问题解决
    maven打包之后为什么class文件中没有注释了?
    Maven中maven-source-plugin,maven-javadoc-plugin插件的使用
    c3p0三种配置方式(automaticTestTable)
    db2设置共享内存
    解决Tomcat数据连接池无法释放
    DB2死锁的解决办法
  • 原文地址:https://www.cnblogs.com/chengulv/p/2230640.html
Copyright © 2020-2023  润新知