//点击复制文本框内容的代码:
function setTxt(obj) {
var rng = document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
rng.select();
rng.execCommand("Copy");
rng.collapse(false);
alert("复制成功!");
}以上是点击复制的代码,当我传入参数D5A6D5A6W是正确的,没问题,但是传输的参数带有“-”的时候就报错了。
例如D5A-6D5-A6W
function setTxt(obj) {
var rng = document.body.createTextRange();
rng.moveToElementText(obj);
rng.scrollIntoView();
rng.select();
rng.execCommand("Copy");
rng.collapse(false);
alert("复制成功!");
}以上是点击复制的代码,当我传入参数D5A6D5A6W是正确的,没问题,但是传输的参数带有“-”的时候就报错了。
例如D5A-6D5-A6W
<input type="button" onclick="copyToClipboard(document.getElementById('code').value)" value="复制"/>
<script type="text/javascript">
function copyToClipboard(txt) {
if(window.clipboardData)
{
window.clipboardData.clearData();
window.clipboardData.setData("Text",txt);
alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")
}
else if(navigator.userAgent.indexOf("Opera") != -1)
{
window.location = txt;
alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")
}
else if (window.netscape)
{
try {
netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
}
catch (e)
{
alert("被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
}
var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
if (!clip) return;
var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
if (!trans) return;
trans.addDataFlavor('text/unicode');
var str = new Object();
var len = new Object();
var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
var copytext = txt;
str.data = copytext;
trans.setTransferData("text/unicode",str,copytext.length*2);
var clipid = Components.interfaces.nsIClipboard;
if (!clip) return false;
clip.setData(trans,null,clipid.kGlobalClipboard);
alert("网址复制成功!快用Ctrl+V粘贴到QQ,MSN中发送给好友吧!")
}
}
</script>
这个是不正确的,这句报异常window.clipboardData.setData("Text",txt);
我想说,我复制的不是textBox活着input里的数值,可能是一个span标签,或者a标签里的数值。
你把<textarea id="code"></textarea>换成<span id="code">test</span>实验下。