2016-09-29 1 views
0

데이터를 .xlsx 파일로 내보낼 수있는 버튼에 관한 문제가 있습니다. 그것은 가장자리, 모질라와 크롬을 위해 잘 작동하지만, 내가 아이폰이나 맥북에 사파리를 보니 그 버튼이 그냥 보이지 않는 것처럼 보입니다.데이터 테이블을 사용하는 Safari의 Excel 버튼 문제

적절한 해결책을 찾을 수 없기 때문에 저는 정말로 도움이 필요합니다. 데이터 내보내기는 Safari, Mozilla, Edge, Chrome에서 완벽하게 작동해야합니다.

누군가 비슷한 문제에 직면했을 수 있습니까? 내 코드 :

$(document).ready(function() { 
var table = $('#tableOrders').DataTable({ 
    "bFilter" : true,    
    "bLengthChange": true, 
    "paging": true, 
    "ordering": true, 
    "order": [[ @if ($user->role=='super_admin') 7 @else 6 @endif, "desc" ]], 
    "info":true, 
    dom: 'lBfrtip', 
    lengthMenu: [ 
     [ 10, 25, 50, -1 ], 
     [ '10', '25', '50', 'Show all' ] 
    ], 
    buttons: [ 
     { 
      extend: 'copyHtml5', 
      text: '<b>Copy all</b>', 
      exportOptions: { 
       columns: [@if($user->role=='super_admin') 0, 1, 2, 3, 4, 5, 6 @else 0, 1, 2, 3, 4 @endif] 
      } 
     }, 
     { 
      extend: 'excelHtml5', 
      text: 'Export all to <b>Excel</b>', 
      exportOptions: { 
       columns: [@if($user->role=='super_admin') 0, 1, 2, 3, 4, 5, 6 @else 0, 1, 2, 3, 4 @endif] 
      } 
     }, 
    ] 
}); 

});

답변

1

excelHtml5 버튼은 Safari에서 지원되지 않습니다.

사파리 : 그것에 대해 문서에 메모 (https://datatables.net/reference/button/excelHtml5)이 있습니다 없음

사파리는 현재 생성 된 파일을 (웹킷 버그 156056 참조) 다운로드 할 수있는 기능을 지원하지 않습니다. Safari에서이 문제를 해결하자마자 여기에서 공개 될 것입니다.

Safari에서 데모를 열어보십시오 : https://datatables.net/extensions/buttons/examples/initialisation/export.html Safari에 Excel 버튼이 표시되지 않습니다.

포럼 토론 (https://datatables.net/forums/discussion/30444/datatables-built-in-buttons-not-working-with-safari-browser)에 기반하여 csv 버튼은 Safari에서 제한적으로 지원됩니다. 생성 된 CSV가있는 새 탭이 열립니다. 데모 페이지에서 사용해보십시오.

0

같은 문제에 직면했지만 위에서 언급 한 것처럼 지원되지 않습니다. 그러나 브라우저간에 무결성을 유지하려면 사파리의 user-agent를 통해 validad하여 문자열을 변수에 전달할 수 있습니다. CSV가 Safari에서 작동하기 때문입니다. 다음

var xls; // variable csv ó excel 
    (navigator.userAgent.indexOf('Safari') != -1 && navigator.userAgent.indexOf('Chrome') == -1) ? xls = 'csv' : xls = 'excel'; //verify 

당신은 연장 :

extend: xls, title: 'yourtitle', className: "btn-sm"