javascript更改粘贴文本

时间:2017-07-21 13:30:39

标签: javascript jquery angularjs

我在contenteditable div中有文本,用户可以复制一些部分并粘贴到这个div中。但是有一些样式处理文本,所以我需要复制部分并从中获取文本,所以我正在制作

 <div id="text-container" contenteditable ng-paste="textPaste($event)"></div>

和js:

$scope.textPaste= function (e) {
    var pasted_text = e.originalEvent.clipboardData.getData('text/plain');
    e.originalEvent.clipboardData.setData('text/plain', pasted_text);
};

所以我真的得到了变量pasted_text所需的文本,但它没有粘贴而不是原始文本。有人能帮助我吗?

1 个答案:

答案 0 :(得分:0)

可能的解决方案:创建分离的DOM元素,将格式化的文本粘贴到其中,然后返回其textContent属性:

var phantomEl = document.createElement('div');
phantomEl.innerHTML = pasted_text;
var cleanText = phantomEl.textContent;

在此之后,您将在cleanText变量中包含纯文本。