jquery Нажмите на динамически созданные теги привязки - PullRequest
1 голос
/ 25 октября 2011

Я связываю свой репитер со значениями базы данных и с тегами привязки, как показано ниже

<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

При нажатии на вышеуказанный якорный тег я хочу заполнить сетку. если я обнаружу щелчок якоря с идентификатором, это должно быть что-то вроде ниже, но я не понимаю, как этого добиться с помощью одной функции

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

    });
});

есть подсказка, как это сделать?

Ответы [ 2 ]

0 голосов
/ 25 октября 2011

Сначала добавьте класс к тегам привязки, например, logoutlink. Затем используйте функцию live() в jQuery вместо функции click():

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

Это прикрепит обработчик событий к любым динамически создаваемым тегам привязки, которые имеют атрибут class="logoutlink".

0 голосов
/ 25 октября 2011

если у вас есть div, окружающий ваш ретранслятор, вы можете сделать

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

или назначьте им класс, как указано ниже ...

$('.classgiventoall')

или вы можете просто сделать

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

это то, что вы спрашивали?

...