1

www.abc.com/pg1.aspxつまり、2つのページがありますwww.abc.com/pg2.aspx

pg1.aspx
response.redirect("www.abc.com/pg2.aspx");

pg2.aspx
string url_refer = Request.UrlReferrer.ToString();

UrlReferrer正常に動作しています。

pg1.aspx
<a href='#' onclick=\"window.open('www.abc.com/pg2.aspx', 'windowname2', 'width=1014, height=709, screenX=1, left=1, screenY=1, top=1, status=no, menubar=no, resizable=no, toolbar=no'); return false;\">

pg2.aspx
string url_refer = Request.UrlReferrer.ToString();

UrlReferrerNULL

私は解決策を探しました。しかし、それらのどれも私が望む解決策につながっていません。

私の問題は、ウィンドウにメニューバー、ステータス、またはツールバーがない場合UrlReferrerです。NULL

そうでない場合UrlReferrerは、前のページの URL があります。

url_refer = Request.ServerVariables["HTTP_REFERER"].ToString();の代わりにもしてみましたstring url_refer = Request.UrlReferrer.ToString();

結果は同じです。

解決策はありますか?

4

5 に答える 5

2
<a href="javascript:void(0);" onClick="MyWindow=window.open('','gallery','location=no,directories=no,menubar=no,scrollbars=no,width=550,height=550');MyWindow.location.href='yoururl.html;MyWindow.focus(); return false;">

秘訣は、IEでリファラーを記録するlocation.hrefを使用することです。

于 2012-11-08T21:53:58.200 に答える
2

私の解決策は、「document.referrer」から取得することです

document.addEventListener('DOMContentLoaded', function () {     
    document.getElementById('hfUrlReferrer').value = document.referrer; 
})
于 2012-10-30T13:00:58.440 に答える
1

フォーラムでこの優れた回避策を見つけ、それを少し修正しました。

このコードをページの上部に配置します。

<script language="JavaScript">
function goTo(url){
   var link = document.getElementById("link");
   link.href = url;
   link.click();
}
</script>
<a id="link" target="_blank" href="javascript:void(0)"
  style="visibility:hidden;position:absolute;"></a>

...そして、次のようにリンクを作成します。

<input type="button" value=google onclick="goTo('http://www.google.com')">

あなたがしているのは、目に見えない<a>要素を作成し、JavaScriptを使用してその要素のアドレスを変更し、プログラムで「クリック」することです。

于 2015-10-14T02:01:21.473 に答える
0

これに対する簡単な答えはありません。一般に、これUrlReferrerはブラウザ固有の動作です。たとえば、Chrome はこれを Internet Explorer とは異なる方法で処理できます。

自分自身を参照している場合は、クエリ文字列パラメーターを渡すか、セッション状態を使用して参照 URL を特定することをお勧めします。

于 2011-09-28T09:07:06.870 に答える
0

よくわからない..しかし、私は知った..

Javascript を使用して新しいページを呼び出すと、セッションが機能しません。

すべてのセッション値は、JavaScript を使用して呼び出される新しいページでリセットされると言われました。

私の質問の代わりに、QueryString を使用しました。

ユーザーに URL を見せたくないのですが、既に JavaScript で URL を隠しています。

それで、クエリ文字列を使用しても問題ありませんよね?

誰かがより良い解決策を持っていますか?

于 2011-09-29T03:41:40.590 に答える