Lassen Sie mich aufhören, Unsinn zu reden, und direkt zur Sache kommen! ! Es kommt selten vor, dass einfaches JS Excel exportieren kann. Im Allgemeinen ist es erforderlich, die auf dem Client installierte Office Excel-Komponente aufzurufen, um diese Arbeit abzuschließen. Hier spreche ich hauptsächlich darüber, wie DataGrid in EasyUI JS kombiniert, um Excel-Dateien zu exportieren
1. Das Kerncodesegment für den Export von Excel lautet wie folgt
function Exproter() { //获取Datagride的列 var rows = $('#test').datagrid('getRows'); var oXL = new ActiveXObject("Excel.Application"); //创建AX对象excel var oWB = oXL.Workbooks.Add(); //获取workbook对象 var oSheet = oWB.ActiveSheet; //激活当前sheet for (var i = 0; i < rows.length; i++) { oSheet.Cells(i + 1, 1).value = rows[i].O_NAME; } oXL.Visible = true; //设置excel可见属性 }
2. Voraussetzung für die reibungslose Ausführung der oben genannten JS-Methode ist
1 ;Internet
„ActiveX-Steuerelemente, die nicht als sicher markiert sind, initialisieren und skripten, auf „Aktivierung“ setzen“
//EasyUI datagrid 动态导出Excel function ExporterExcel() { //获取Datagride的列 var rows = $('#tt').datagrid('getRows'); var columns = $("#tt").datagrid("options").columns[0]; var oXL = new ActiveXObject("Excel.Application"); //创建AX对象excel var oWB = oXL.Workbooks.Add(); //获取workbook对象 var oSheet = oWB.ActiveSheet; //激活当前sheet //设置工作薄名称 oSheet.name = "导出Excel报表"; //设置表头 for (var i = 0; i < columns.length; i++) { oSheet.Cells(1, i+1).value = columns[i].title; } //设置内容部分 for (var i = 0; i < rows.length; i++) { //动态获取每一行每一列的数据值 for (var j = 0; j < columns.length; j++) { oSheet.Cells(i + 2, j+1).value = rows[i][columns[j].field]; } } oXL.Visible = true; //设置excel可见属性 }