javascript
  • html
  • textarea
  • clipboard
  • 2017-08-08 65 views 0 likes 
    0

    我希望能够在textarea中放置文本,并将其复制到剪贴板,而不显示textarea。使用JavaScript从隐藏控件复制文本

    要复制的文本复制到剪贴板,我创建

    onclick = "document.getElementById('txtData').select(); document.execCommand('copy');" 
    

    一个按钮,这工作得很好。

    但是,如果我尝试使用每要么

    strStyle = 'display:none;' 
    
    strStyle = 'visibility:hidden;' 
    

    If I want my textarea to be hidden, how do I do it?

    然后拷贝不再起作用隐藏textarea的。 textarea在两种情况下都是隐藏的,但我已经检查过源代码HTML,并且我想要的文本仍然存在 - 它不像隐藏文本区域意味着它的内容实际上不可用。

    如果一个完整的例子是合适的,这里有一个我从http://www.jstips.co/en/javascript/copy-to-clipboard/

    <head> 
    <script type='text/javascript'> 
    function c2cb() { 
    document.getElementById("txtInvoice").select(); 
    document.execCommand('copy'); 
    } 
    </script> 
    </head> 
    <body ><form id="frmAdminConsole" name="frmAdminConsole" METHOD="POST"> 
    
    <textarea id='txtInvoice' cols='80' style = 'visibility:hidden;'> 
    
    
    
         46 
    
    
    JOHN SMITH 
    GAEL SCOIL NA BFHAL 
    34 A IVEAGH CRESENT 
    BELFAST 
    BT12 6AW 
    
    
    
    Bubble Ball Football [2017-02-03 09:00]  20 190.00 
    Nerf Wars [2017-02-05 10:00] 14 190.00 
    TeamTrek [2017-02-06 12:00]  20 0.00</textarea> 
    
    <input type="button" value="Copy!" onclick="c2cb()"> 
    

    这把不工作,直到我删除“的风格=‘能见度:隐藏;’”。

    我有我认为是一个D'哦!时刻,并说:“我应该使用隐藏的控制”,但它也不起作用。

    我会解决隐藏textarea隐形(使其与背景相同的颜色)的方式。

    +0

    如果文字是不可见的最终用户将如何在里面写的,什么是复制操作的从那里预期输出。相反,您也可以使用'' – Deepak

    +0

    只是建议。你可以检查https://clipboardjs.com/ – Atiq

    +0

    Deepak - 最终用户不是在那里写的,我是。我需要将文本放到最终用户的剪贴板上 – DJDave

    回答

    2

    使用style ='display:block;宽度:0;高度:0;不透明度:0;'而不是知名度

    <head> 
     
    <script type='text/javascript'> 
     
    function c2cb() { 
     
    document.getElementById("txtInvoice").select(); 
     
    document.execCommand('copy'); 
     
    } 
     
    </script> 
     
    </head> 
     
    <body ><form id="frmAdminConsole" name="frmAdminConsole" METHOD="POST"> 
     
    
     
    <textarea id='txtInvoice' cols='80' style='display:block; width:0; height:0; opacity: 0;'> 
     
    
     
    
     
    
     
         46 
     
    
     
    
     
    JOHN SMITH 
     
    GAEL SCOIL NA BFHAL 
     
    34 A IVEAGH CRESENT 
     
    BELFAST 
     
    BT12 6AW 
     
    
     
    
     
    
     
    Bubble Ball Football [2017-02-03 09:00]  20 190.00 
     
    Nerf Wars [2017-02-05 10:00] 14 190.00 
     
    TeamTrek [2017-02-06 12:00]  20 0.00</textarea> 
     
    
     
    <input type="button" value="Copy!" onclick="c2cb()">

    +0

    您的建议是否适合您?正如我在我的帖子中所说的那样,它并不适合我,而且我刚刚尝试过FF,Chrome和IE – DJDave

    +0

    ,但它无法正常工作。 – Atiq

    +0

    使用style ='display:block;宽度:0;高度:0;不透明度:0;'似乎适用于Chrome和IE – kastriotcunaku

    相关问题