2011-10-24 100 views
1

我绑定我的中继器与数据库中的值,并用锚标记如下jQuery的点击动态创建锚标记

<asp:Repeater ID="Repeater1" runat="server"> 
    <ItemTemplate> 
     <a href='#Roles' id='<%# DataBinder.Eval(Container.DataItem,"RoleID") %>'> 
     <%# DataBinder.Eval(Container.DataItem,"RoleName") %></a> 
    </ItemTemplate> 
</asp:Repeater> 

的上面的输出会是这样

abcd--anchor tag with id=1 
efgh--anchor tag with id=2 
ijkl--anchor tag with id=3 
上的点击

上面的锚标记我想填充gridview。 如果我发现锚点击id为它应该是类似下面, 但我不知道如何通过单一的功能来实现它

$(document).ready(function() { 
    $('#1').click(function(e) { 
     e.preventDefault(); 
     Logout(); 

    }); 
}); 

任何暗示如何做到这一点?

回答

0

首先,向锚点标记添加一个类,如logoutlink。然后使用jQuery的live()函数代替click()功能:

$(document).ready(function(){ 
    $('.logoutlink').live('click', function(e) { 
     e.preventDefault(); 
     Logout(); 
    }); 
}); 

这将事件处理程序附加到具有class="logoutlink"属性的任何动态创建锚标记。

+0

通过在函数中使用的锚的id:JQUERY是我正在寻找 – Tan

0

,如果你有你的周围中继一个div,你可以做

$('div.surrounding a').click(function(e) { 
    e.preventDefault(); 
    Logout(); 
}; 

,或给他们所有的一类如下所述...

$('.classgiventoall') 

,或者你可以简单地做

$('#1,#2,#3') 

是你在问什么?

+0

是的,但是ID正在动态生成“$('#1,#2,#3')”我的意思是1,2,3 ...等被从数据库中取出,当点击锚标签时我必须传递id值示例3并加载网格中的所有相关值。我被卡在锚标签点击检测并传递值 – Tan

+0

通过在函数中使用的锚的id:JQUERY是我正在寻找的。任何想法请分享 – Tan

+0

以及您可以使用e.attr('id')来获取元素的ID ...这有帮助吗? – Nacht