//过滤栏表格导出数据  
                /* xukf
                 * id datagrid id
                 * url Action 路径
                 */
                function exportExcelToFilter(id){
                    var filterRules = $('#'+id).datagrid('options').filterRules;
                    var params = $('#'+id).datagrid('options').queryParams;
                    var url = $('#'+id).datagrid('options').url;
                    for (var i = 0; i < filterRules.length; i++) {
                        var obj = filterRules[i];
                        if (obj.field == 'applicationDate') {
                            if (obj.op == 'greater') {
                                params.rdGt = obj.value;
                            } else if (obj.op == 'less') {
                                params.rdLt = obj.value;
                            } else if (obj.op == 'equal') {
                                params.rdGt = obj.value;
                                params.rdLt = obj.value;
                            }
                        }else{
                            params[obj.field] = obj.value;
                        }
                    }
                    var sortName = $('#'+id).datagrid('options').sortName;
                    var sortOrder = $('#'+id).datagrid('options').sortOrder;
                    params["order"]=sortOrder;
                    params["sort"]=sortName;
                    params["operate"]="export";
                    var columnJsonf = $('#'+id).datagrid("options").frozenColumns;
                    var columnJson = $('#'+id).datagrid("options").columns;
                    var form = $('<form></form>');  
                    // 设置属性  
                    form.attr('action', url);  
                    form.attr('method', 'post');  
                    // form的target属性决定form在哪个页面提交  
                    // _self -> 当前页面 _blank -> 新页面  
                    form.attr('target', '_self');  
                    // 创建Input  
                    var input = $('<input type="hidden" name="columnJson" />');
                    var inputRow = $('<input type="hidden" name="rows" value="10" />');
                    var inputPage = $('<input type="hidden" name="page" value="1" />');
                    form.append(inputRow);
                    form.append(inputPage);
                    var jsonArray=new Array();
                    var arrayOn=new Array();
                    for (var i=0;i<columnJsonf.length;i++)
                    {
                         for (var j=0;j<columnJsonf[i].length;j++)
                            {
                                 var col=columnJsonf[i][j];
                                col.rowspan=columnJson.length;
                                arrayOn.push(col);
                            }
                    }
                    for (var i=0;i<columnJson.length;i++)
                    {
                        if(i==0){
                            for (var j=0;j<columnJson[i].length;j++)
                            {
                                 var colj=columnJson[i][j];
                                 arrayOn.push(colj);
                            }
                            jsonArray.push(arrayOn);
                        }else{
                            jsonArray.push(columnJson[i]);
                        }
                    }
                    
                   // alert(JSON.stringify(jsonArray));
                    input.attr('value', JSON.stringify(jsonArray));  
                    // 附加到Form
                    form.append(input);
                    form.appendTo("body");
                    form.css('display', 'none');
                    // 提交表单  
                    form.form('submit', {    
                        url:url,    
                        onSubmit: function(param){
                            $.each(params, function(name, value) {
                                param[name]=value;
                                });
                        }    
                    });
                    form.remove();
                }

easyui datagrid 可过滤行的数据表格 导出的更多相关文章

  1. 雷林鹏分享:jQuery EasyUI 表单 - 过滤下拉数据网格

    jQuery EasyUI 表单 - 过滤下拉数据网格 下拉数据网格(Combogrid)组件和下拉框(Combobox)组件的共同点是,除了都具有下拉面板以外,它们都是基于数据网格(Datagrid ...

  2. TP5.0 PHPExcel 数据表格导出导入(引)

    TP5.0 PHPExcel 数据表格导出导入(引) 今天看的是PHPExcel这个扩展库,Comporse 下载不下来,最后只能自己去github里面手动下载,但有一个问题就是下载下来的PHPExc ...

  3. 扩展 easyui 控件系列:为datagrid 增加过滤行

    此功能还为真正完成,起到抛砖引玉的效果,发动大家的力量把这个功能完善起来,效果图如下: 基本上就是扩展了 datagrid.view 中的onAfterRender 这个事件,具体代码如下: $.ex ...

  4. easyui源码翻译1.32--datagrid(数据表格)

    前言 此前网上有easyui1.25的源码  应该算是比较老的版本  之后又经历了1.26 . 1.3. 1.31. 1.32 .1.33.1.34  1.33开始支持css3 算是又一个转折  但是 ...

  5. (转)扩展jquery easyui datagrid 之动态绑定列和数据

    本文转载自:http://blog.csdn.net/littlewolf766/article/details/7336550 easyui datagrid 不支持动态加载列,上次使用的方法是自己 ...

  6. jQuery EasyUI datagrid列名包含特殊字符会导致表格错位

    首先申明:本文所述的Bug存在于1.3.3以及更高版本中,其它低版本,本人未测试,太老的版本不想去折腾了. 洒家在写前端的SQL执行工具时,表格用了 jQuery EasyUI datagrid,因为 ...

  7. easyui datagrid 批量编辑和提交数据

    easyui datagrid 行编辑和提交方,废话就不多说了,直接上代码 <div style="margin: 5px;"> <table id=" ...

  8. easyui datagrid动态设置行、列、单元格不允许编辑

    Easyui datagrid 行编辑.列编辑.单元格编辑设置 功能: 动态对datagrid 进行行.列.单元格编辑进行设置不允许编辑. 禁用行编辑: 在编辑方法调用前,对选择的行进行判断,如果不允 ...

  9. easyui datagrid 让某行复选框置灰不能选

    easyui中datagrid 让某行复选框置灰不能进行选中操作,以下为主要部分的code. //加载完毕后获取所有的checkbox遍历 onLoadSuccess: function(data){ ...

随机推荐

  1. python中的yield

    在理解yield之前,要首先明白什么是generator,在理解generator之前首先要理解可迭代的概念. 可迭代(iterables)在你创建一个list的时候,可以逐个读取其中的元素,该逐个读 ...

  2. 浅谈My SQL引擎的对比

    MySQL数 据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎,就必须重新编译MYSQL.在缺省情况下,MYSQL支持三个引擎:ISAM.MYISAM和HEAP.另外两种类型IN ...

  3. (Command Pattern)命令模式

    定义 将“请求”封装成对象,以便使用不同的请求.队列或者日志来参数化其他对象.命令模式也支持可撤销的操作. 结构图: 命令模式的角色划分: Reciever(命令的接收者):接收命令,并知道如何进行必 ...

  4. Swift实战-QQ在线音乐(第二版)

    此版本使用百度音乐接口,原因是豆瓣接口很多歌曲没办法找到歌词. 此版本添加了歌词的显示.上一曲.下一曲的实现.歌曲列表指明当前歌曲. 下面来看一下实现过程>>> 一.项目准备: 百度 ...

  5. Swift游戏实战-跑酷熊猫 12 与平台的碰撞

    这节主要实现熊猫和平台的碰撞,实现熊猫在平台上奔跑 要点 对平台进行物理属性设置 //设置物理体以及中心点 self.physicsBody = SKPhysicsBody(rectangleOfSi ...

  6. PostgreSQL与RPM

    如何查看使用PostgreSQL的RPM包安装后的文件目录及相关路径(PostgreSQLRPM的spec文件已经帮我们创建好了postgres用户及postgres组). 查看RPM文档信息:/us ...

  7. angular 和jq 的AJAX的请求区别

    最近项目中使用angular,结果发现后台没法获取参数,所以,稍微研究了一下两者在发送ajax时的区别. 注意angular和jquery的ajax请求是不同的. 在jquery中,官方文档解释con ...

  8. 输入和输出的总结(c语言)

    c语言中有多种的输入和输出方式,下面就简单总结一下: 一.输入的三种方式 (1)scanf scanf 函数可以在变量中使用,也可以在数组中使用,当然指针上也能用到,是一个很好的输入函数.scanf是 ...

  9. jquery 实现ajax 上传文件的功能(使用插件 ajaxfileupload)

    js文件的下载地址 : http://files.cnblogs.com/wangqc/ajaxfileupload.js 页面代码: <html>    <!-- 引入相关的js文 ...

  10. C# WinForm动态添加MSChart控件

    添加mschart.dll动态链接库 添加引用 System.Windows.Forms.DataVisualization     MSChart控件作为方便的用户数据展示控件,可以方便的使用控件提 ...