1

我有一个中继器,其中每个项目都包含一个视频。这个视频名称是动态的,我从跨度标签中的 ID 嵌入到 flowplayer。我的问题是我无法想出只抓取所选跨度 ID 的逻辑,因为每个跨度都具有相同的父 ID,因此它总是抓取第一个。

<asp:Repeater ID="rep_WebinarsCompleted" runat="server" OnItemDataBound="rep_WebinarsCompleted_ItemDataBound">
    <ItemTemplate>
        <a href="" id="overlay-triggers" name="overlay-triggers" runat="server">
            <span id='<%# DataBinder.Eval(Container.DataItem, "VideoFileName")%>'>View</span>
        </a>
   </ItemTemplate>
</asp:Repeater>

我从以下位置检索跨度 ID(视频文件名): var i = $("#overlay-triggers span").attr("id"),

<script type="text/javascript">
    $(function () {
        $("#overlay-triggers").overlay(
            onBeforeLoad: function () {
               var i = $("#overlay-triggers span").attr("id"),
               alert(i);
            },
        });
    });
</script>
4

1 回答 1

1

您可以onclick为每个跨度添加一个。

所以是这样的:

<span onclick="spanClicked(this.id);" id='<%# DataBinder.Eval(Container.DataItem, "VideoFileName")%>'>View</span>

函数调用中的this.id将 span 的 ( this) ID ( id) 属性传递给函数。并且有一个函数可以调用:

function spanClicked(id){
   alert(id);
}
于 2013-07-02T18:55:50.437 回答