1.后台c#方法
//复制字符串到剪切板
protected void ctrl_c(string text)
{
// 开线程是为了使用STA模式,复制剪切板时需要
Thread t = new Thread((ThreadStart)(() =>
{
Clipboard.SetDataObject(text, true);
}
));
t.SetApartmentState(ApartmentState.STA);
t.Start();
t.Join();
}
-- 服务端适用,在网页终端无效
2. 前台js方法
function ctrl_c(text) {
var tag = document.createElement('textarea');
tag.setAttribute('id', 'cp_jqb_textarea');
tag.value = text;
document.getElementsByTagName('body')[0].appendChild(tag);
document.getElementById('cp_jqb_textarea').select();
document.execCommand('copy');
document.getElementById('cp_jqb_textarea').remove();
}
特殊情况下,用server块包裹(比如写在head里)
<div runat="server" id="copy_text_js">
<script type='text/javascript'>
function ctrl_c(text) {
var tag = document.createElement('textarea');
tag.setAttribute('id', 'cp_jqb_textarea');
tag.value = text;
document.getElementsByTagName('body')[0].appendChild(tag);
document.getElementById('cp_jqb_textarea').select();
document.execCommand('copy');
document.getElementById('cp_jqb_textarea').remove();
}
</script>
</div>