9

私はjavascriptに少し慣れていませんが、小さな問題があります。

javascriptでページにリダイレクトしようとしています(リダイレクトを実行します)。私はそのwindow.locationように設定しています:

window.location = "./RedirectPage.aspx?ReturnUrl=page.aspx?key=val&key2=val2";

これで、RedirectPage.aspxで、ReturnUrlとして渡したページにリダイレクトしようとすると、key2=val2がReturnUrlではなくRedirectPageの別のクエリ文字列パラメーターとして解析されます。

それがそれを行うことは理にかなっていますが、それは私がやろうとしていることではありません...私がこれをどのように解決するかについて何か考えはありますか?

4

2 に答える 2

20

ReturnUrlクエリ文字列をURLエンコードする必要があります。

window.location = "./RedirectPage.aspx?ReturnUrl="+encodeURIComponent("page.aspx?key=val&key2=val2");
于 2012-04-30T15:38:14.087 に答える
3

これを試して:

window.location = "./RedirectPage.aspx?"+encodeURIComponent("ReturnUrl=page.aspx?key=val&key2=val2")

アンパサンドをエスケープする必要があります(クエリ文字列で使用するため)。

于 2012-04-30T15:38:18.880 に答える