asp:Menu があり、 http://www.example.com/one.aspxを指す最上位のメニュー項目が含まれています。最上位のメニュー項目にカーソルを合わせると、ドロップダウンが表示され、選択肢の 1 つがhttp://www.example.com/one.aspxを指す Oneです。どうやら、私はこれを行うことができないので、?これを回避するには、2 番目の URL の末尾に追加します。asp:Menu で同じ場所を指す URL を 2 つ持つことができるかどうかについて興味がありましたか?
7336 次
4 に答える
21
私は同じ問題を抱えており、ソリューションのわずかなバリエーションを使用しました。URLにアンカーを追加しました。例:
ところで:私はサイトマップファイルを使用していましたが、そのファイルと同じURLのノードに追加すると、エラー/例外はかなり明確になります。
同じURL'/WebSite1/MyPage.aspx'を持つ複数のノードが見つかりました。XmlSiteMapProviderでは、サイトマップノードに一意のURLが必要です。
ですから、同じURLにすることは実際には不可能だと思います。
于 2009-01-19T17:02:49.803 に答える
2
私はそうは思いません。
メニュー コントロールは、各項目の NavigateUrl プロパティを、メニューを正しく強調表示および展開するための識別子として使用します。同じ URL を持つ 2 つのノードがある場合、コントロールはどのノードを強調表示するかをどのように認識しますか?
于 2009-01-19T17:07:22.447 に答える
1
上記のコメントの私の解決策は Firefox でしか機能しないことがわかりました。これは、現在のリンクと同じリンクをクリックしても、ハッシュ タグを使用してページを更新するための改善された解決策です。
$(document).ready(function () { // refresh page when clicking menu item with current address $('#<%=aspMenu.ClientID%> a').click(function () {
var currentUrl = location.pathname;
var clickedUrl = $(this).attr('href');
if (currentUrl.indexOf('#') != -1 || clickedUrl.indexOf('#') != -1){
if (currentUrl.indexOf('#') != -1)
currentUrl = currentUrl.substring(0, currentUrl.indexOf('#'));
if (clickedUrl.indexOf('#') != -1)
clickedUrl = clickedUrl.substring(0, clickedUrl.indexOf('#'));
if (currentUrl == clickedUrl)
location.reload();
}); });
またはさらに良い: ドキュメントの準備ができたら、hrefs から数字でアンカーを削除します。
$(document).ready(function () {
$('#<%=aspMenu.ClientID%> a').each(function () {
var re = /#\d/
var url = $(this).attr('href');
$(this).attr('href', url.replace(re, ""));
});
});
于 2014-06-18T12:48:07.390 に答える
0
変更するクエリ文字列変数を添付できます。
<siteMapNode url="~/UnderConstruction.aspx?x=1" title="Customer" description="Customer" />
<siteMapNode url="~/UnderConstruction.aspx?x=2" title="User" description="User" />
<siteMapNode url="~/UnderConstruction.aspx?x=3" title="Area" description="Area" />
<siteMapNode url="~/UnderConstruction.aspx?x=4" title="Well" description="Well" />
<siteMapNode url="~/UnderConstruction.aspx?x=5" title="Build Report" description="Build" />
于 2009-02-28T22:01:38.520 に答える