1

我正在使用 zClip Jquery 插件将一些 URL 复制到剪贴板。zClip 的示例代码如下。

$(document).ready(function () {
    $('a#copy-description').zclip({
        path: 'zClip/ZeroClipboard.swf',
        copy: $('p#description').text()
    });
});

它作为一个普通的锚标签和一个普通的段落正常工作。但是我需要将锚标记放在转发器中,并且需要将相应的 URL 复制到剪贴板<%# Eval("URL") %>。当转发器生成时,将有 n 个锚点和 n 个要复制的 URL。我已经尝试了一些我知道的事情,但我无法让它发挥作用。我该如何解决这个问题?

<asp:Repeater ID="rptWebAddress" runat="server" OnItemCommand="rptWebAddress_ItemCommand">
    <ItemTemplate>
        <p>
            <asp:Table runat="server">
                <asp:TableRow ID="TableRow1" runat="server">
                    <asp:TableCell>
                        <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("URL") %>' Target="_blank">Click Here</asp:HyperLink>
                    </asp:TableCell>
                    <asp:TableCell>Web link. Click it. Open in browser. Save as a bookmark.</asp:TableCell>
                </asp:TableRow>
                <asp:TableRow ID="TableRow2" runat="server">
                    <asp:TableCell> <a style="text-decoration: underline;" id="copy-description" href="#">Copy</a> 
                    </asp:TableCell>
                    <asp:TableCell>Web link as text. Copy and paste.</asp:TableCell>
                </asp:TableRow>
            </asp:Table>
        </p>
    </ItemTemplate>
</asp:Repeater>
4

2 回答 2

0

您不需要 jQuery 来执行此操作。好的老式javascript会做:

<asp:TableCell>
   <a style="text-decoration: underline;" id="copy-description" href="#" onclick="CopyUrl(this, '<%# Eval("URL") %>';">Copy</a>
</asp:TableCell>

您的 javascript 函数将如下所示:

function CopyUrl(object, url) {
    object.zclip({
        path: 'zClip/ZeroClipboard.swf',
        copy: url
    });    
    return false;
}
于 2013-03-28T14:44:53.417 回答
0

假设您可以zcopyCopy元素添加一个类

$(function(){
    $('.zcopy').each(function(i,v){
        var el = $(v);
        el.zclip({
            path: 'zClip/ZeroClipboard.swf',
            copy: el.closest('tr').prev().find('a').attr('href')
        });
    });
})
于 2013-03-28T11:42:55.663 回答