//过滤栏表格导出数据  
                /* 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. PostgreSQL Replication之第十一章 使用Skytools(2)

    11.2 剖析 skytools Skytools 不只是一个单一的脚本,而是一个提供各种不同服务的工具的集合.一旦我们安装了Skytools,更详细地查一下这些组件的细节是有意义的: • londi ...

  2. Applescript 带参数调用某个App的方法

    do shell script "open '/Users/eran/Documents/Workground/DragonAdventure/FlashCode/tools/SWFInfo ...

  3. FOJ 2013 11 月赛

    这套题目还是比较吊的,由于我的沙茶,还是很多没有做出来- -! C:逆序数 D:呵呵 A:妈蛋,自己精度没弄好,想到之前GCC的要加eps,就WA了几次后交Visual C++过了!C(n,m)p^m ...

  4. 转:python webdriver API 之分页处理

    对于 web 页面上的分页功能,我们一般做做以下操作:  获取总页数  翻页操作(上一页,下一页) 对于有些分页功能提供上一页,下一页按钮,以及可以输入具体页面数跳转功能不在本例的讨论范围. .. ...

  5. 【Origin】jquery.barddialog.js

    /// <reference path="jquery-2.1.1.min.js" /> /** * @license jquery.bardDialog 1.0.0 ...

  6. csuoj 1113: Updating a Dictionary

    http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1113 1113: Updating a Dictionary Time Limit: 1 Sec  ...

  7. linux第4天 shell socket

    $[ ] 表示形式告诉shell对方括号中的表达式求值 echo $[3+9] 赋值运算符 =,+=,-=,*=,/=,%=,&=,^=.|=,<<=,>>= let ...

  8. 关于C语言链表的学习

    今天讲了一种非传统型的链表.听得不是太好. 到数据结构那一部分的时候.一定要好好听听.

  9. 夺命雷公狗---node下的一聊天室-首发

    今晚感觉挺蛋疼,就用了点时间,在node下开发了个聊天室来玩玩,不过之是简单的开发了套而已,并没多做什么考虑,, 但是发现了一个好处就是用node来写聊天室代码居然少得可怜,这个不佩服node都不行, ...

  10. 夺命雷公狗---DEDECMS----19dedecms栏目列表页的完成

    我们的栏目页表页的模版如果不清楚叫什么名,可以通过: 这里很清楚的记录着,我们来看下他: 他长得和我们以前做首页时候是不是很像呢?其实就是一样的,我们改下即可,如下所示: {dede:channel ...