2017-02-13 2 views
0

このスクリプトは、comboBoxから選択を取得し、選択した値を使用して特定のパスにリダイレクトし、選択したWebページを開きます。変数パスでWindow.locationが動作しない

function redirect(){ 
var obj = document.getElementById("cat"); // 
var obj2= document.getElementById("sub1"); 
var obj3= document.getElementById("sub2"); 
var redir2=obj2.options[obj2.selectedIndex].text.substring(0,4); 
var redir =obj.options[obj.selectedIndex].text.substring(0,4); // 
var redir3 =obj3.options[obj3.selectedIndex].text.replace(/ /g,"_");  

var url= redir+"/"+redir2+"/"+redir3+".php"; 
url=url.toLowerCase(); 

alert(url); 

window.location.href = "np/categories/"+url;} 

firefoxでログを監視しているときに、時にはパスを実行することがあります。

いずれにせよ、のページがロードされることはありません。 (テストパスとページの両方が存在します)。時々私はこの

のように、Mozillaのネットワークコンソールの状態に緑色の光を得るそれは実際にページをロードすることはありません http://localhost/np/cat/auto/serv/testingpage.php [HTTP/1.1 200 OK 0ミリ秒]

をGET。 どうすればこの問題を解決できますか?

+0

を試してみてください? – brk

+0

いくつかの入力サンプルを追加する – iceDragon

+0

redirect()関数は何らかのイベントで呼び出されるべきです。 –

答えて

0

相対パスが異なる可能性があり、動作しない可能性があります。 window.location.originは現在のページのような完全な起点パスを提供します: "http://stackoverflow.com"。

だから、これを試してみてください。

window.location.href = window.location.origin + "/np/categories/" + url; 
+0

私はこの解決策と全く同じ結果を得ています。 同じ結果でwindow.location.pathname = "...."を試してみました。 –

+0

ブラウザコンソールでコマンドを実行して、結果を提供してください。 – AHBagheri

+0

"window.open("/np/categories/"+ url);"を試してみましたが、それは新しいタブで開くはずです...しかし、私は新しいWebページをロードします同じページ...ので、私は問題はパス、(window.openを実行すると、パスをチェック(だけで結構です) –

0

ベースのパスに

を見つけることができないように見えるbe`url`どうなるか、この

window.location.href = window.location.origin + "/np/categories/"+url; 
+0

私はこの解決策と全く同じ結果を得ています。 同じ結果でwindow.location.pathname = "...."を試してみました。 –

関連する問題