easyui datagrid 可过滤行的数据表格 导出

    //过滤栏表格导出数据  
                /* 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();
                }
               

posted @ 2015-12-02 16:44  攻城狮不是猫  阅读(1449)  评论(0)    收藏  举报