我有一个中继器,它显示和数据绑定选项卡链接的来源。这是代码:
protected void rptTab_ItemBound(Object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Item i = e.Item.DataItem as Item;
Link hlTabLink = e.Item.FindControl("hlTabLink") as Link;
hlTabLink.Target = Sitecore.Links.LinkManager.GetItemUrl(i);
hlTabLink.DataSource = i.Paths.FullPath;
hlTabLink.Field = "Title";
}
}
现在这是我的标记:
<asp:Repeater ID="rptTab" runat="server" OnItemDataBound="rptTab_ItemBound">
<ItemTemplate>
<li id= "liTabTest" runat = "server">
<a>
<sc:Link ID = "hlTabLink" Field = "scTabLink" onclick = "TabClick()" runat ="server"></sc:Link>
</a>
</li>
</ItemTemplate>
</asp:Repeater>
这是 jQuery,它根据选择的项目动态添加 CSS 类:
$(document).ready(function () {
init();
});
function init() {
$("ul#Tab-labels li").removeClass("tab-label TabbedPanelsTabSelected");
$("ul#Tab-labels li:first").addClass("tab-label TabbedPanelsTabSelected");
};
function TabClick() {
alert('test');
};
现在您可以看到我正在根据选项卡的索引显示 CSS 文件。我还必须在该 jQuery 中添加点击事件。所以基本上有两件事我很困惑:
- 我在 jQuery 中的点击事件没有被调用:(
- 从 jQuery 我必须在点击事件中知道它必须通过哪个页面?所以我必须从代码隐藏或什么?就像一个隐藏字段并在其中存储标签页,然后从 jQuery 中取出。
我应该如何解决这个问题?请帮忙!