0

我有一个占位符

<div class="main2" id="divAgentMenu" runat="server">
    <ul class="nav sf-menu">
        <asp:PlaceHolder ID="phAgentMenu" runat="server"></asp:PlaceHolder>        
    </ul>
</div>

它在后面的代码中加载了链接按钮。不幸的是,此时我无权访问生成按钮的代码,因此向按钮添加东西(如 ID)是不可行的。(如果这是唯一的解决方案,那么我该看看我是否能做到这一点但是改变了)只是为了让事情更有趣,我需要知道触发了哪个按钮,这样我才能生成正确的链接。(是的,我可以按原样生成链接,但这是一项昂贵的操作,所以我宁愿仅在需要时执行)我希望有一种方法可以将 onclick 应用于占位符或使用表单,但是我无法使这两种方法都起作用

生成的代码,来自运行时。

<ul class="nav sf-menu">

    <li class="home-li"><a class="home-link" onclick="popup(&#39;popUpDiv&#39;)" href="http://..."><img class="home-icon" src="Images/home_icon.png" alt="home" />Home&nbsp;&nbsp;</a><ul><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">Activity</a></li><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">My Profile</a></li></ul></li><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">Submission&nbsp;&nbsp;</a><ul><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">New Submission</a></li><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">Manage Submission</a></li><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">Bind Eligible Quotes</a></li></ul></li><li><a onclick="popup(&#39;popUpDiv&#39;)" href="http://...">Search&nbsp;&nbsp;</a></li><li><a href="http://..." target="_blank">Reporting&nbsp;&nbsp;</a>

</ul>

生成的代码(网址因过长而被删除。)(它们是有效的)基本上,它是一系列看起来很漂亮的按钮,每个按钮都链接到某个地方。我需要在按下按钮后计算链接,而不是之前计算链接,遗憾的是,由于处理时间(链接生成方法涉及加入多个数据表,一些加密......)

好的,经过进一步的研究,似乎唯一的方法是将所有链接按钮直接指向另一个页面,传递所需的信息。另一个页面获取该信息,生成最终链接,然后重定向到该链接。

当然,这有点麻烦,因为我本质上是在获取菜单,指向一个网关,该网关指向另一个网关,该网关可能指向另一个网关,然后再到达那里。

4

1 回答 1

0

根据您的评论,听起来您想在执行默认链接行为并且页面重定向之前计算单击链接时要转到的实际链接。你可以这样做:

$('#phAgentMenu').find('a').live('click', function(e) {
    e.preventDefault(); //this prevents the link from redirecting
    //now calculate your link
    var linkDestination = yourLinkCalculation();
    window.location.href = linkDestination;
});
于 2013-03-21T19:24:51.800 回答