導出功能如今分爲兩種模式: static, blob
<table grid-manager="demo-export"></table>
var table = document.querySelector('table[grid-manager="demo-export"]') table.GM({ ajax_url: 'http://www.lovejavascript.com/learnLinkManager/getLearnLinkList' ,ajax_type: 'POST' ,supportAjaxPage: true ,supportExport:true // 配置啓用導出功能, 默認即爲true ,exportConfig: { // 導出的方式: 默認爲static // 1.static: 前端靜態導出, 無需後端提供接口,該方式導出的文件並不完美。 // 2.blob: 經過後端接口返回二進制流。`nodejs`可以使用`js-xlsx`, `java`可以使用 `org.apache.poi`生成二進制流。 mode: 'static', // 導出的後綴名 , 默認爲`xls` suffix: 'xls', // 導出處理器函數,該函數須要返回一個promise。當`exportType`爲`static`時,該參數不生效。 handler: (fileName, query, pageData, sortData, selectedList) => { // 須要經過promise中的resolve()返回二進制流(blob),有兩種返回格式: // 1.resolve(blob), 2.resolve({data: blob}) return new Promise(); } } ,query: {pluginId: 1} ,i18n: 'en-us' ,columnData: [ { key: 'name', text: 'name' },{ key: 'info', text: 'info' },{ key: 'url', text: 'url', template: function(url, rowObject){ return '<a style="color:#337ab7;" href="'+url+'" target="_blank">點擊跳轉</a>'; } },{ key: 'action', remind: 'the action', width: '100px', text: '操做', template: function(action, rowObject){ return '<a style="color:#337ab7;" href="javascript:;" onclick="testEditFN()" learnLink-name="'+rowObject.name+'">編輯</a>'; } } ] });
GridManager.exportGridToXls('demo-export', fileName, onlyChecked)
table: 須要操做的table 或 table的gridManagerName值
fileName: 導出後使用的文件名,若是不設置將使用插件配置項gridManagerName。
onlyChecked:是否僅導出選中的項, 默認爲falsejavascript