在谷歌浏览器和Safari中粘贴功能

时间:2011-03-19 07:14:54

标签: c# asp.net browser google-chrome safari

我无法将内容粘贴到文本框中,该文本框的属性“Textmode”是多行的,此问题发生在Google Chrome和Safari浏览器中

1 个答案:

答案 0 :(得分:1)

为了安全起见,使用ZeroClipboard实现剪贴板功能,适用于所有浏览器,无论是否有任何浏览器复制 - 粘贴功能。

请参阅下面的用法。下载并解压缩项目中的Zeroclipboard

<script src="zeroclipboard/ZeroClipboard.js" type="text/javascript"></script>
  <script type="text/javascript" >
      ZeroClipboard.setMoviePath('zeroclipboard/ZeroClipboard.swf');
     <script language="JavaScript" type="text/javascript">
            var clip = null;


            function init() {
                clip = new ZeroClipboard.Client();
                clip.setHandCursor(true);

                clip.addEventListener('load', function(client) {
                });

                clip.addEventListener('mouseOver', function(client) {
                    // update the text on mouse over
                    clip.setText(document.getElementById('TextBox1').value);
                });

                clip.addEventListener('complete', function(client, text) {

                Label1.innerText = document.getElementById('TextBox1').value + ' Copied to clipboard.';
                });

                clip.glue('divbutton', 'divcontainer');
            }


        </script>

1. Don't forget to set <body onLoad="init()">
2. Set the clip.SetText method in onchnage event of the textbox. <td align="left">
                            <asp:TextBox ID="TextBox1" runat="server" Width="218px" onchange="clip.setText(this.value)"></asp:TextBox>
                        </td>
3. <div id="divcontainer" style="position: relative; top: 0px; left: 0px; width: 193px;">
                    <div id="divbutton" class="mybutton">
                        <b>Copy To Clipboard...</b></div>
                </div> in case use need to some button's illusion on page.