>  기사  >  php教程  >  Excel 파일을 내보내기 위해 JS와 결합된 EasyUI를 구현하는 방법

Excel 파일을 내보내기 위해 JS와 결합된 EasyUI를 구현하는 방법

高洛峰
高洛峰원래의
2016-12-07 11:14:331670검색

쓸데없는 소리는 그만하고 바로 본론으로 들어가겠습니다! ! 단순 JS에서 Excel을 내보낼 수 있는 경우는 거의 없습니다. 일반적으로 이 작업을 완료하려면 클라이언트에 설치된 Office Excel 구성 요소를 호출해야 합니다. 여기서는 EasyUI의 DataGrid가 JS를 결합하여 Excel 파일을 내보내는 방법을 주로 설명합니다

1. Excel을 내보내는 핵심 코드 부분은 다음과 같습니다

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. 위의 JS 메소드가 원활하게 실행되기 위한 전제조건은

1. 컴퓨터에 엑셀이 설치되어 있다는 것입니다.

2. ;인터넷

"안전한 것으로 표시되지 않은 ActiveX 컨트롤 초기화 및 스크립트, 활성화로 설정"

//EasyUI datagrid 动态导出Excel
function ExporterExcel() {
      //获取Datagride的列
      var rows = $(&#39;#tt&#39;).datagrid(&#39;getRows&#39;);
      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可见属性
}


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.