Выберите заполненную таблицу с JavaScript (чтобы быть скопированными в буфер обмена)

Я задавался вопросом, знает ли кто-либо, как выбрать использование js заполненная таблица, так, чтобы пользователь мог щелкнуть правой кнопкой по выбору, скопируйте его в буфер обмена и затем вставьте его на Excel. При выборе таблицы вручную процесс работает отлично. Но иногда, если высота таблицы несколько раз больше, чем экран, выбирая его перетаскивающий мышь, становится утомительным. Так, я хочу дать пользователям возможность нажать на кнопку "select the whole table", и все готовится быть скопированным.

Какие-либо идеи?

60
задан Brian Tompsett - 汤莱恩 20 May 2017 в 15:52
поделиться

1 ответ

Да, это не слишком сложно, и во всех основных браузерах (включая IE 6, и действительно 5) будет работать следующее:

(Обновлено 7 сентября 2012 года после того, как Юкка Корпела прокомментировал, что предыдущая версия не работала в стандартном режиме IE 9)

Демонстрация: http://jsfiddle.net/timdown/hGkGp/749/

Code:

function selectElementContents(el) { var body = document.body, range, sel; if (document.createRange && window.getSelection) { range = document. createRange(); sel = window.getSelection(); sel.removeAllRanges(); try { range.selectNodeContents(el); sel.addRange(range); } catch(e) { range.selectNode(el); sel.addRange(range); } 	} else if (body.createTextRange) { range = body.createTextRange(); range.moveToElementText(el); range.select(); } }
<таблица id="tableId" border="1">  Heading 1Heading 2   ячейку 1ячейка 2   
98
ответ дан 24 November 2019 в 17:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: