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>

生成されたコード(URLが長すぎるため削除されました。)(有効です)基本的に、これは一連の見栄えの良いボタンであり、それぞれがどこかにリンクしています。悲しいことに、処理時間のために、ボタンを押す前ではなく、ボタンを押した後にリンクを計算する必要があります(リンク生成方法には、複数のデータテーブルの結合、暗号化が含まれます...)

わかりました。追加の調査の結果、これを行う唯一の方法は、すべてのリンクボタンを別のページに直接移動させ、必要な情報を渡すことだと思われます。他のページはその情報を取得し、最終的なリンクを生成してから、そのリンクにリダイレクトします。

もちろん、これはやや面倒です。私は本質的にメニューを取り、そこに到達する前に別のゲートウェイに向かう可能性のある別のゲートウェイに向かうゲートウェイに向けています。

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 に答える