我想使用javascript复制asp:标签的内容。
我可以使用这种方法:
strContent = document.getElementById('MainContent_lblHtml').innerText;
window.clipboardData.setData("Text", strContent);
但它会删除格式并只复制文本。 (我假设因为dataformat设置为“text”。)
标签包含一些格式化的html。我希望保留格式,获得相同的效果,就像我用鼠标在屏幕上突出显示它一样,然后复制到(例如)word文档中。
答案 0 :(得分:1)
<强>更新强>
以下内容将突出显示所需的div,然后将HTML复制到剪贴板。转到Word并按 CTRL + V 将格式化的html粘贴到文档中。
<script type="text/javascript">
function CopyHTMLToClipboard() {
if (document.body.createControlRange) {
var htmlContent = document.getElementById('MainContent_lblHtml');
var controlRange;
var range = document.body.createTextRange();
range.moveToElementText(htmlContent);
//Uncomment the next line if you don't want the text in the div to be selected
range.select();
controlRange = document.body.createControlRange();
controlRange.addElement(htmlContent);
//This line will copy the formatted text to the clipboard
controlRange.execCommand('Copy');
alert('Your HTML has been copied\n\r\n\rGo to Word and press Ctrl+V');
}
}
</script>