2016-12-17 5 views
1

同様の質問がされていることは知っていますが、いろいろなテストの後に誰も動作しないようです。私は、ローカルのhtmlファイルからjsを使って別のローカルhtmlファイルにリダイレクトしようとしているという事実と何かをしなければならないと思います。私creationPage.htmlでローカルHTMLファイルへのリダイレクトは同じウィンドウで開きません

ボタン:

 <form> 
      <button id="createChar">Create character</button> 
     </form> 

コードリダイレクトのための私のjsファイル内:

var Create = document.getElementById('createChar'); 

    Create.addEventListener("click", function() { 

    //window.open(url); //opens in a new tab, WHICH IS NOT DESIRED !!! 
    //window.location.replace(url); //doesnt work either. 

    var url = "http://localhost/myprojects/L2/selectYourCharacter/test.html"; 
    window.location.href = url; 
    return false; 
}); 

私はそれが最善の方法だとaddListenerEventに固執したいです。私がwindow.open(url, "_blank")を実行した場合、それは動作しません。

要約:同じウィンドウ内にあるhttp://localhost/myprojects/L2/charCreation/creationPage.htmlhttp://localhost/myprojects/L2/selectYourCharacter/selectYourCharacter.htmlにある私のボタンを経由してリダイレクトしたいです。私は時間のためにこれで立ち往生されているようにあなたの助けのための

おかげでたくさん...

注:window.open(「www.youraddress.com」、「_自己」)が機能せず、私のファイルはlocalhost上で動作しているからだと思います。

+0

[同じウィンドウと同じタブでURLを開く](URL:http://stackoverflow.com/questions/8454510/open-url-in-same-window-and-in-same-tab) –

+0

の可能な複製私は質問を更新しました。このスレッドの解決策はうまくいかず、おそらくローカルのhtmlファイルからローカルのhtmlファイル(localhost)にリダイレクトしようとしています。 – Genia

答えて

1

あなたが持っているボタンは、フォームを送信しているので、あなたのコードが機能しない理由への完全な答えがあります。クリックリスナーからfalseを返すと、ブラウザにはクリックを処理しなかったことが通知されます。

このコードは、

フォームのデフォルトの送信動作が停止するため、動作します。ボタンはフォームを送信し、実行するイベントを処理します。また

var Create = document.getElementById('createChar'); 

Create.addEventListener("click", function(e) { 

    //window.open(url); //opens in a new tab, WHICH IS NOT DESIRED !!! 
    //window.location.replace(url); //doesnt work either. 

    var url = "http://localhost/myprojects/L2/selectYourCharacter/test.html"; 
    window.location = url; 
    e.preventDefault(); 
}); 

これは同じ考えに動作しますが、代わりにフォームを送信されるボタンのデフォルトの動作を停止します。

+0

私は何の手がかりも持っていませんが、フォームIDのトリックは働いていましたが、私にとっては2番目の解決策ではありません。おそらくこの正確な質問のための第1の解決策を残すことがあなたから素晴らしいことがあります。とにかく、ありがとう! – Genia

+0

もう1つはうまくいく、おそらくあなたは何か間違ったことをしました。 – TigOldBitties

+0

あなたは正しいです。それは両方のケースで完璧に動作し、私が何をしたのか知っています... thx – Genia

0

は次のようにタグ で使用してみてください:

<a href="/myprojects/L2/selectYourCharacter/selectYourCharacter.html" style="text-direction:none"> 
    <button>Your Button Text</button> 
</a> 
+0

リダイレクトの周りにルールを追加したいので、htmlの中にURLを設定しないようにしたいと思います。 – Genia

関連する問題