-1

我不明白如何在单击文本区域后立即复制到点击板。我的意思是它应该选择其中的所有内容,然后它应该弹出并询问诸如“按 ctrl c”之类的内容复制到剪贴板..

我已经有一个代码但无法在文本区域中选择全文,应该复制到剪贴板..

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
 <head>
 <script type="text/javascript">

function myfunc2() {
 var selectedobj=document.getElementById('showthis');

  if(selectedobj.className=='hide'){  //check if classname is hide 
    selectedobj.style.display = "block";
    selectedobj.readOnly=true;
    selectedobj.className ='show';
  }else{
    selectedobj.style.display = "none";
    selectedobj.className ='hide';
 }
}


function copyToClipboard (text) {
  window.prompt ("Copy to clipboard: Ctrl+C, Enter", text);
}



function select_all()
{
// alert(document.getElementById("showthis").value);

var text_val=eval("document.getElementById('showthis').value");
text_val.focus();

var copy = text_val.select();
window.prompt ("Copy to clipboard: Ctrl+C, Enter", copy);

}

</script>
 </head>

 <body>


            <label  onclick="myfunc2()">Click here</label>
            <textarea id="showthis" style="display:none" class="hide"  onclick="select_all()" readonly>dfdsfsfasdfdsfsfasdfssdfsfasf</textarea>


 </body>
</html>


任何人都可以看看这个...

编辑: 我只需要 Javascript 代码(不是 JQuery)

4

3 回答 3

2

尝试使用此代码在 TextBox 或 TextArea 中选择文本:

<textarea id="txtSelect">Hello</textarea>

<script type="text/javascript">
    var textBox = document.getElementById("txtSelect");
    textBox.onfocus = function() {
        textBox.select();

        // Work around Chrome's little problem
        textBox.onmouseup = function() {
            // Prevent further mouseup intervention
            textBox.onmouseup = null;
            return false;
        };
    };
</script>

如果您需要选择文本并将其复制到剪贴板,我认为您应该为此目的使用插件。看这个问题 :: Copy text to the client's clipboard using jQuery

于 2012-11-29T10:21:54.383 回答
1

根据您的代码,我开发了以下示例,希望对您有所帮助:

HTML:

<textarea id="showthis" class="hide" readonly>click to copy</textarea>

JS

$(function(){
    var select_all = function(control){
        $(control).focus().select();
        var copy = $(control).val();
        window.prompt ("Copy to clipboard: Ctrl+C, Enter", copy);
    }
    $("#showthis").click(function(){
        select_all(this);
    })
})
于 2012-11-29T10:27:44.687 回答
-1

使用 JQuery,它将是:

$('#showthis').select()

仅使用 javascript:

document.getElementById('showthis').select()
于 2012-11-29T10:14:10.283 回答