如何在asp.net mvc中导出到excel各级层次jqgrid?

如何在asp.net mvc中导出到excel各级层次jqgrid?,asp.net,asp.net-mvc,jqgrid,hierarchical,Asp.net,Asp.net Mvc,Jqgrid,Hierarchical,我有5级的jqgrid。 我想通过单击按钮将所有级别的网格导出到excel 我该怎么做 我使用jqGrid5.3.0,Visual Studio 2017 以下是我的代码(适用于2级): 函数FillJQueryGrid(projectdval){ var myColTemplate={searchoptions:{sopt:['cn','eq','bw','bn','nc','ew','en']}; $(“#jqGrid”).jqGrid({ url:'@url.Action(“GetTran

我有5级的jqgrid。 我想通过单击按钮将所有级别的网格导出到excel 我该怎么做

我使用
jqGrid5.3.0,Visual Studio 2017

以下是我的代码(适用于2级):

函数FillJQueryGrid(projectdval){
var myColTemplate={searchoptions:{sopt:['cn','eq','bw','bn','nc','ew','en']};
$(“#jqGrid”).jqGrid({
url:'@url.Action(“GetTransmittalSumList”,“Report”)'+'?ProjectId='+ProjectDVAL,
jsonReader:{
重复项:false,
根:函数(obj){
返回目标记录;
}
},
数据类型:“json”,
高度:“自动”,
页码:1,
colModel:[
{label:'transmital id',name:'ArchiveChecklistMainId_fk',模板:myColTemplate,key:true,hidden:true},
{标签:'transmital no',名称:'trans_ref_no',宽度:200},
{标签:'transmital subject',名称:'ChkMain_subject',宽度:400},
{标签:“传输日期”,名称:“传输日期”,宽度:200},
{标签:'Delay',名称:'sum_Delay_count',宽度:200,颜色:'ff0000'}
],
宽度:“100%”,
有一次:是的,
自动宽度:正确,
rowNum:20,
子网格:对,
subGridRowExpanded:ShowChildGridCodeing,
工具栏过滤器:对,
寻呼机:“jqGridPager”,
无知者:是的
});
$(“#jqGrid”).jqGrid('filterToolbar',{searchOperators:true,stringResult:true,searchOneNoter:false,defaultSearch:cn});
};
//***********************************填充格线标高2*******************************************
函数showChildGridCoding(parentRowID,parentRowKey){
var childGridID=“GR”+parentRowID+“_table”;
var childGridPagerID=“GR”+parentRowID+“\u pager”;
var childGridURL='@Url.Action(“GetCodingSumLists”,“Report”)'+'?ArchiveChecklistMainId_fk='+parentRowKey;
$('#'+parentRowID).append('');
var subgridDivId=childGridID;
变量$subgrid=$(“”),
subgridData=$(this).jqGrid(“getLocalRow”,parentRowID).details,
$subgridDataDiv=$(“#”+subgridDivId),
$subgridCell=$subgridDataDiv.closest(“.subgrid data”).prev(“.subgrid cell”);
$subgridCell.addClass(“绿色”);//在td.subgrid-cell上设置背景色
$subgridDataDiv.append($subgrid);
$subgrid.jqGrid({
url:childGridURL,
jsonReader:{
重复项:false,
根:函数(obj){
返回目标记录;
}
},
数据类型:“json”,
高度:“自动”,
宽度:“100%”,
页码:1,
colModel:[
{label:'Coding_Id',name:'Coding_Id',key:true,hidden:true},
{标签:'code',名称:'comp_code'},
{标签:'revision',名称:'revision',宽度:500},
{标签:'Delay',名称:'sum_Delay_count',宽度:500}
],
有一次:是的,
子网格:对,
subGridRowExpanded:showChildGridReceiver,
寻呼机:“#”+childGridPagerID,
rowNum:rowCount,
loadComplete:函数(数据){

如果(data.records.length在当前的Guriddo jqGrid实现中不支持导出子网格


如果适用,您可以创建分组并进行导出。导出到Excel、Pdf、Csv和Html时支持分组?
function FillJQueryGrid(ProjectIdVal) {
    var myColTemplate = { searchoptions: { sopt: ['cn', 'eq', 'bw', 'bn', 'nc', 'ew', 'en'] } };

    $("#jqGrid").jqGrid({
        url: '@Url.Action("GetTransmittalSumLists", "Report")' + '?ProjectId=' + ProjectIdVal,

        jsonReader: {
            repeatitems: false,
            root: function (obj) {
                return obj.records;
            }
        },
        datatype: "json",
        height: 'auto',
        page: 1,
        colModel: [
            { label: 'transmital id', name: 'ArchiveChecklistMainId_fk', template: myColTemplate, key: true, hidden: true},
            { label: 'transmital no', name: 'trans_ref_no', width: 200 },
            { label: 'transmital subject', name: 'ChkMain_Subject', width: 400 },
            { label: 'transmital date', name: 'trans_date', width: 200 },
            { label: 'Delay', name: 'sum_delay_count', width: 200, color: "#ff0000" }

        ],
        width:"100%",
        loadonce: true,
        autowidth: true,
        rowNum: 20,
        subGrid: true,
        subGridRowExpanded: showChildGridCoding,
        toolbarfilter: true,
        pager: "#jqGridPager",
        ignoreCase: true

    });
    $("#jqGrid").jqGrid('filterToolbar', { searchOperators: true, stringResult: true, searchOnEnter: false, defaultSearch: "cn" });

        };

//***********************************fill grid level 2 *******************************************
    function showChildGridCoding(parentRowID, parentRowKey) {
        var childGridID = "GR"+parentRowID + "_table";
        var childGridPagerID = "GR" + parentRowID + "_pager";

        var childGridURL = '@Url.Action("GetCodingSumLists", "Report")' + '?ArchiveChecklistMainId_fk=' + parentRowKey;

        $('#' + parentRowID).append('<table id=' + childGridID + '></table><div id=' + childGridPagerID + ' class=scroll></div>');

        var subgridDivId = childGridID;
        var $subgrid = $("<table id='" + subgridDivId + "_t'></table>"),
    subgridData = $(this).jqGrid("getLocalRow", parentRowID).details,
    $subgridDataDiv = $("#" + subgridDivId),
    $subgridCell = $subgridDataDiv.closest(".subgrid-data").prev(".subgrid-cell");

        $subgridCell.addClass("green"); // set background color on td.subgrid-cell
        $subgridDataDiv.append($subgrid);

        $subgrid.jqGrid({

            url: childGridURL,
            jsonReader: {
                repeatitems: false,
                root: function (obj) {
                    return obj.records;
                }
            },
            datatype: "json",
            height: 'auto',
            width: "100%",

            page: 1,
            colModel: [
                { label: 'Coding_Id', name:'Coding_Id',key:true,hidden:true},
                { label: 'code', name: 'comp_code' },
                { label: 'revision', name: 'revision',width:500 },
                { label: 'Delay', name: 'sum_delay_count',width:500 }
            ],
            loadonce: true,
            subGrid: true,
            subGridRowExpanded: showChildGridReceiver,
            pager: "#" + childGridPagerID,
            rowNum: rowCount,
            loadComplete: function (data) {

                if (data.records.length <= rowCount) {
                    $("#" + childGridPagerID).hide();
                } else {
                    $("#" + childGridPagerID).show();
                }
                $("[id*='" + subgridDivId + "'].ui-jqgrid-sortable").each(function () {
                    this.style.backgroundColor = "#A3E4D7";
                });

            }
        });

    }