copyHtml5
複製表格資料至剪貼簿按鈕 (HTML)。
請注意 - 此屬性需要 DataTables 的 Buttons 擴充套件。
描述
此按鈕提供一個簡單的複製到剪貼簿的操作給終端使用者,將表格的資料複製到系統剪貼簿。在大多數情況下,這將自動在使用者剪貼簿上可用,但如果您的瀏覽器不支援所需的 API,則會向終端使用者顯示一則訊息,邀請他們使用鍵盤或 編輯 選單來複製表格的資料。複製是從一個幾乎完全隱藏的 textarea
元素完成的,因此終端使用者不會看到它,但瀏覽器仍然可以讓 textarea 獲得焦點並選取文字。
當使用者啟用複製命令時,對話框將會關閉。他們也可以點擊方塊或按下 Esc 鍵來關閉它,而不執行複製操作。
如果您的表格具有多列的標頭或頁尾,這些都將包含在匯出中。如果標頭或頁尾包含 colspan
或 rowspan
儲存格,它們將以空字串填入,因為這是一個純文字匯出,沒有辦法表示跨越多個儲存格的儲存格。
有許多語言字串可以設定來設定顯示給終端使用者的訊息 - 這些在 DataTable 的 language
設定選項的 buttons
屬性中設定(請參閱下面的範例)- 這些是,包括預設值
{
copy: 'Copy',
copySuccess: {
1: "Copied one row to clipboard",
_: "Copied %d rows to clipboard"
},
copyTitle: 'Copy to clipboard',
copyKeys: 'Press <i>ctrl</i> or <i>\u2318</i> + <i>C</i> to copy the table data<br>to your system clipboard.<br><br>To cancel, click this message or press escape.'
}
請注意,此按鈕類型名稱的 html5
部分是為了與其他 HTML5 匯出按鈕保持一致,但與其同伴按鈕不同,它實際上不需要 HTML5 API。它將適用於所有 DataTables 支援的瀏覽器。
選項
此按鈕可以在其設定物件中設定以下選項,以自訂其動作和顯示,此外還有所有按鈕可用的選項(例如 buttons.buttons.text
)
名稱 | 類型 | 預設值 |
---|---|---|
action | ||
顯示一個對話框,使用者可以使用它將表格資料複製到剪貼簿 | ||
className | buttons-copy buttons-html5 | |
按鈕的類別名稱。有關詳細資訊,請參閱 | ||
copySuccess 自:3.1.2 起 | true | |
指示在複製完成時是否應顯示訊息。 | ||
customize 自:1.1.1 起 | undefined | |
可用於修改匯出資料內容的函數。該函數採用兩個參數,即按鈕設定的資料和按鈕的設定物件。函數返回的值將用作匯出的值。 如果您希望在匯出的資料中新增公司標頭或頁尾、描述資料或任何其他資訊,這會特別有用。 從 Buttons 1.5.2 開始,此函數會傳遞三個參數
| ||
exportOptions | {} | |
選取要從 DataTable 收集以進行匯出的資料。這包括要選取哪些欄、列、排序和搜尋的選項。有關完整詳細資訊,請參閱 | ||
fieldBoundary | ||
用於括住複製到系統剪貼簿的表格純文字表示形式中每個欄位的字元。這會自動在每個儲存格資料的開頭和結尾新增。 | ||
fieldSeparator | \t | |
用於分隔複製到系統剪貼簿的表格純文字表示形式中的欄位的字元。 | ||
footer | true | |
指示是否應將表格頁尾包含在匯出的資料中。請注意,此參數的預設值已在 Buttons 3.0 中更新為 | ||
header | true | |
指示是否應將表格標頭包含在匯出的資料中。 | ||
messageBottom 自:1.4.0 起 | * | |
顯示在表格底部的訊息,或者如果顯示在表格底部則為 | ||
messageTop 自:1.4.0 起 | * | |
顯示在表格頂部的訊息,或者如果顯示在表格頂部則為 | ||
newline | \n | |
用於分隔資料行的字元。請注意,在 Windows 用戶端上,預設值為 | ||
text | 複製 | |
按鈕的顯示文字。可以使用此選項設定文字(請參閱 | ||
title 自:1.4.0 起 | * | |
將包含在匯出資料中的表格標題。有關與此參數相關的所有選項,請參閱 |
範例
DataTables 初始化:使用 Html 複製按鈕
new DataTable('#myTable', {
layout: {
topStart: {
buttons: ['copyHtml5']
}
}
});
DataTables 初始化:使用 copy
按鈕類型來別名 HTML 按鈕選項。
new DataTable('#myTable', {
layout: {
topStart: {
buttons: ['copy']
}
}
});
DataTables 初始化:使用 exportOptions
僅複製目前的 DataTable 頁面
new DataTable('#myTable', {
layout: {
topStart: {
buttons: [
{
extend: 'copyHtml5',
text: 'Copy current page',
exportOptions: {
modifier: {
page: 'current'
}
}
}
]
}
}
});
DataTables 初始化:使用 language
物件來設定啟用時顯示的資訊
new DataTable('#myTable', {
language: {
buttons: {
copyTitle: 'Data copied',
copyKeys: 'Use your keyboard or menu to select the copy command'
}
},
layout: {
topStart: {
buttons: ['copyHtml5']
}
}
});