浏览代码

Added onExportSaved event, triggered if data is exported

Dustin Utecht 6 年之前
父节点
当前提交
db5ba9a801
共有 2 个文件被更改,包括 27 次插入0 次删除
  1. 14 0
      site/docs/extensions/export.md
  2. 13 0
      src/extensions/export/bootstrap-table-export.js

+ 14 - 0
site/docs/extensions/export.md

@@ -58,6 +58,20 @@ This is an important link to check out as some file types may require extra step
 
 - **Default:** `{}`
 
+## Events
+
+### onExportSaved
+
+- **jQuery Event:** `export-saved.bs.table`
+
+- **Parameter:** `exportedRows`
+
+- **Detail:**
+
+  Fired when the data is exported, the parameter contain:
+
+  * `exportedRows`: The exported rows (depends on exportDataType)
+
 ### Icons
 
 - export: `'glyphicon-export icon-share'`

+ 13 - 0
src/extensions/export/bootstrap-table-export.js

@@ -61,6 +61,16 @@ $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales)
 
 $.fn.bootstrapTable.methods.push('exportTable')
 
+$.extend($.fn.bootstrapTable.defaults, {
+  onExportSaved (exportedRows) {
+    return false
+  }
+})
+
+$.extend($.fn.bootstrapTable.Constructor.EVENTS, {
+  'export-saved.bs.table': 'onExportSaved'
+})
+
 $.BootstrapTable = class extends $.BootstrapTable {
   initToolbar (...args) {
     const o = this.options
@@ -182,6 +192,7 @@ $.BootstrapTable = class extends $.BootstrapTable {
         })
       })
       this.togglePagination()
+      this.trigger('export-saved', this.getData())
     } else if (o.exportDataType === 'selected') {
       let data = this.getData()
       let selectedData = this.getSelections()
@@ -204,8 +215,10 @@ $.BootstrapTable = class extends $.BootstrapTable {
       doExport(() => {
         this.load(data)
       })
+      this.trigger('export-saved', selectedData)
     } else {
       doExport()
+      this.trigger('export-saved', this.getData(true))
     }
   }