以角度4复制页面的部分

时间:2017-09-12 07:55:06

标签: angular

我有这个Web应用程序生成这个格式很好的表(bootstrap类型)。我希望有一个按钮,当点击它时,它会复制剪贴板中的表格,以便用户可以将其粘贴到word / excel中。

我尝试了几个库,例如:ng2-clipboard,angx-clipboard,但它们都允许只复制输入字段中的值而不是页面的一部分。我尝试在服务中创建表格的html,但它并没有保留样式,并且最终只是粘贴了html代码。

我有这个片段用于处理旧版本的应用程序,我认为它选择表格,然后调用复制命令:

this.selectElementContents = function (el) {
    el = document.getElementById('filtered-table');
    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();
    }
    document.execCommand('copy');
}

这似乎不正确"棱角分明"做事的方式,我该怎么办?

0 个答案:

没有答案