Как скопировать текст HTML таблицы в буфер обмена? - PullRequest
0 голосов
/ 23 октября 2018

Я связываю данные с HTML-таблицей, используя функциональность angularjs в отдельном файле .js.Где, как я хочу скопировать эти ограниченные текстовые данные и вставить их в любой текстовый документ, нажав кнопку ввода ниже.

<button type="button" class="btn" ng-click="selectElementContents();"></button>

и в угловой функции, написанной контроллером, как показано ниже ..

$scope.selectElementContents = function () {
        copyTblData();        
    }
function copyTblData() {
        var copyText = document.getElementById('tablerecords');
        $('#tablerecords').focus();
        $('#tablerecords').select();
        document.execCommand('copy');            
    }

, где я делаю ошибку, не понятную, требуется ценное предложение.

1 Ответ

0 голосов
/ 23 октября 2018

Для выбора данных вы должны использовать диапазоны и выбрать.Вы можете попробовать это:

let table = document.querySelector('#testTable');
let button = document.querySelector('#button');
function selectNode(node){
  let range  =  document.createRange();
  range.selectNodeContents(node)
  let select =  window.getSelection()
  select.removeAllRanges()
  select.addRange(range)
}
button.addEventListener('click',function(){
  selectNode(table);
  document.execCommand('copy')
  
})
td{
   border:1px solid black;
}
<table collapsed id = 'testTable'>
 <tr>
   <td>test</td>
    <td>test</td>
  </tr><tr>
   <td>test</td>
    <td>test</td>
  </tr>
</table>
<br/>
<button id = "button">select</button>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...