{hero}

copyHtml5

自:Buttons 1.0.0 起

複製表格資料至剪貼簿按鈕 (HTML)。
請注意 - 此屬性需要 DataTables 的 Buttons 擴充套件。

描述

此按鈕提供一個簡單的複製到剪貼簿的操作給終端使用者,將表格的資料複製到系統剪貼簿。在大多數情況下,這將自動在使用者剪貼簿上可用,但如果您的瀏覽器不支援所需的 API,則會向終端使用者顯示一則訊息,邀請他們使用鍵盤或 編輯 選單來複製表格的資料。複製是從一個幾乎完全隱藏的 textarea 元素完成的,因此終端使用者不會看到它,但瀏覽器仍然可以讓 textarea 獲得焦點並選取文字。

當使用者啟用複製命令時,對話框將會關閉。他們也可以點擊方塊或按下 Esc 鍵來關閉它,而不執行複製操作。

如果您的表格具有多列的標頭或頁尾,這些都將包含在匯出中。如果標頭或頁尾包含 colspanrowspan 儲存格,它們將以空字串填入,因為這是一個純文字匯出,沒有辦法表示跨越多個儲存格的儲存格。

有許多語言字串可以設定來設定顯示給終端使用者的訊息 - 這些在 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

範例

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']
		}
	}
});