2011-05-25 78 views
0

我有一个按钮,为每个搜索记录生成。 按钮功能是将该记录的文件编号复制到剪贴板,但无论点击哪个按钮,它只复制第一个记录文件编号?Javascript复制到剪贴板只得到第一个记录

<imgage alt="Copy File No. <%=ShowFileNo%><delim> to clipboard" name="<%=ShowFileNo%>" src="Style/Copy2.png" onclick="copy('CopyImage');" id="CopyImage" /> 

function copy(controlId) { 
    var control = document.getElementById(controlId); 
    if (control) { 
    var controlValue = control.name + '<delim>'; 
    window.clipboardData.setData('Text', controlValue); 
    alert("'" + controlValue + "'" + ' copied to clipboard') 
    window.close(); 
    } 
} 

感谢 达伦

+0

做这些不同的记录有不同的'id's或者是'id'总是''CopyImage “'?也许不是传递'id',而是传递'this'并重命名'controlId'来控制。 – 2011-05-25 02:31:06

+0

你确定你传递了不同的'controlId'到函数吗? – 2011-05-25 02:31:11

+0

你知道这只适用于IE吗? – 2011-05-25 08:29:23

回答

0

ID必须是唯一的。这对于HTML和XML都是固有的。

您可以将您的onclick改成这样:onclick="copy(this);"

,改变你的这一提法:

function copy(control) { 
// var control = document.getElementById(controlId); 
    if (control) { 
    var controlValue = control.name + '<delim>'; 
    window.clipboardData.setData('Text', controlValue); 
    alert("'" + controlValue + "'" + ' copied to clipboard') 
    window.close(); 
    } 
} 
+0

真棒谢谢!我一直认为最好的办法是处理它。 – Darren 2011-05-25 02:36:56