如何将控件从转发器中获取ID转换为href标签

时间:2014-08-25 15:49:26

标签: javascript asp.net repeater

在我的asp usercontrol中我有一个转发器,里面有一些基本控件可以做一些数据绑定。

其中一个控件包含id

<asp:Repeater runat="server" ID="itemsRepeater" OnItemDataBound="itemsRepeater_ItemDataBound">

<ItemTemplate>
            <asp:Label  runat="server" ID="uId" Text='<%# DataBinder.Eval(Container.DataItem, "UserId") %>' />
    <a href="myLink and @UserId" runat="server">

</ItemTemplate>

如何获取标签uId并将其关联的id传递给转发器中每个元素的@UserId。

我的OnItemDataBound事件中没有任何内容,我现在转向它,找到解决方法。

感谢。

我通过在数据透视表中设置数据透视表

来解决此问题
<a id="link" runat="server" href='<%# "Details.aspx?userId=" + DataBinder.Eval(Container.DataItem, "UserId") %>'>

1 个答案:

答案 0 :(得分:1)

您的代码稍作修改。我刚刚为你的物品添加了一个div。

<asp:Repeater runat="server" ID="itemsRepeater" >
    <ItemTemplate>
       <div>
         <asp:Label id="uId" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "UserId") %>' /></asp:Label>
         <a id="A1" runat="server">Click here</a>
       </div>
    </ItemTemplate>
</asp:Repeater>

现在您的Js代码将uid添加到您的链接。

$(document).ready(function () {
    var yourlink = 'myurl';
    $('span[id^=itemsRepeater]').each(function (i) {
        $(this).closest('div').find('a').prop('href', yourlink + $(this).html());
    });
});