Javascript 单击功能仅对我的中继器中的第一项有效,为什么?

Javascript 单击功能仅对我的中继器中的第一项有效,为什么?,javascript,jquery,html,dom-traversal,Javascript,Jquery,Html,Dom Traversal,这是我的标记: <a href="#" id="buyMobileTickets" class="btn blue" data-ivaid="<%# ((MovieModel)Container.DataItem).FID %>">Buy Ticket(s)</a> 以下是我的功能: function mobileTickets(e, ui) { var ivaId = $(this).attr("data-ivaid");

这是我的标记:

 <a href="#" id="buyMobileTickets" class="btn blue" data-ivaid="<%# ((MovieModel)Container.DataItem).FID %>">Buy Ticket(s)</a> 
以下是我的功能:

 function mobileTickets(e, ui) {      
        var ivaId = $(this).attr("data-ivaid");
        var theatre = Regal.userPrimaryTheatre;
        var movietDt = new Date();

        window.open("http://www.fandango.com/redirect.aspx?&a=12878&dte=0&mid=" + ivaId + "&tid=" + theatre , "_blank");

    }

这只适用于中继器中的第一个数据元素,我做错了什么

因为HTML中不应该有具有相同ID的元素。文档中始终可以有一个具有特定ID的元素

您应该改用类:

<a href="#" class="buyMobileTickets btn blue" ...>Buy Ticket(s)</a>

您的所有项目是否具有相同的
ID
ID是否唯一。应该只有一个
#buyMobileTickets
元素。太好了,我该如何用class来表达这一行@PaulT.Rykiel用一个例子更新了我的答案。@PaulT.Rykiel:你已经在这一行中有了一个类。再加一个。谢谢你们,你们真的帮了我
<a href="#" class="buyMobileTickets btn blue" ...>Buy Ticket(s)</a>
$(".buyMobileTickets").on("click", mobileTickets);