0

シナリオ:- ローカルに asp.net Web サイト ディレクトリがあります:- " http://localhost/DemoWebsite/"。その中に「Secure」フォルダがあります。そのフォルダー内には、Page1.aspx と Page2.aspx の 2 つの Web ページがあります。もう 1 つの Web ページ:- Page3.aspx はフォルダーの外にあります。

要件:- 「Page2.aspx」が親ページ「Page1.aspx」から RadWindow で開かれるようになりました。「キャンセル」ボタンが「Page2.aspx」にあり、そのボタンをクリックすると、RadWindow から出て「Page3.aspx」に直接移動したい。

試みられた解決策:- ボタンの「OnClientClick」イベントが JS 関数「LogOff()」に設定されています。定義は次のとおりです。

function LogOff()
{        
   top.location.href = "http://localhost/DemoWebsite/Page3.aspx";
}

問題は、このWebサイトを他のサーバーにプッシュしたいときに、上記のenitreリンクを提供できないためです。したがって、リンクを次のように指定すると:-

top.location.href = "~/Page3.aspx";あるいは単に、top.location.href = "Page3.aspx";

Web サイトを実行して [キャンセル] ボタンをクリックすると、「リソースが見つかりません」というエラーがスローされます。ボタンクリック後にリンクを試みるためです"/DemoWebsite/Secure/Page3.aspx".

質問top.location.href:-リンクを試行するために何を割り当てるか "/DemoWebsite/Page3.aspx"。Page3.aspx はSecure フォルダーにないためです。

4

1 に答える 1

1

あなたは次のようなことをすることができます...GetRadWindow().BrowserWindow.location.href = '../page3.aspx';

GetRadWindow()radwindowへの参照を取得する関数です。

function GetRadWindow()
{
var oWindow = null; if (window.radWindow)
    oWindow = window.radWindow; else if (window.frameElement.radWindow)
    oWindow = window.frameElement.radWindow; return oWindow;
}

BrowserWindowパーツは、radwindowが開いたウィンドウへの参照を取得します。残りは、開いているウィンドウを目的の場所にリダイレクトするだけです。

編集:あなたの質問をもう一度見た後、私はあなたがjavascriptを介して相対パスに到達する方法を知る必要があると思いますか?その場合はこんな感じです… document.location.href = '../'; //Up one level。../はあなたを1レベル戻します。/ pathを使用するだけの場合は、現在のページと同じフォルダレベルから移動していると見なされます。

于 2012-09-26T20:22:01.743 に答える