2016-11-03 19 views
0

パスワード付きのページを簡単に作成したいと考えています。javascriptのif文ではlocation.hrefが機能しません

私は "場所"(私はすべてを試してみました..置換、asign ...など)、任意のコードを使用すると、何も動作しませんでした!!!!

location.hrefの代わりにwindow.open()を使用すると、完全に機能しています。 しかし、私は、HTML

<form action="" method="post" name="Please enter the password to continue."> 
<div class="WorkPassword"> 

<input type="password" class="button" id="WorkInputPassword" 
name="password" placeholder="Please enter the password"/> 

<input type="submit" class="button" id="submit" value="Enter" onClick="goLogin();"> 
</div> 

とJavaScriptでは

...

が私を助けて...同じウィンドウ...ない新しいタブまたは新しいウィンドウに滞在したいです。

var input = document.getElementById('WorkInputPassword'); 
var goLogin = function() { 

     var password = input.value; 

     if (password === '1234') { 

      location.href="google.com"; 

      return false; 

     } else { 
      alert('check again'); 
      input.value = ''; 
      return false; 
     } 
    }; 

答えて

0

あなたは(http://またはhttps://を含む)完全なアドレスを使用する必要があり、新しいドメインにリダイレクトします。あなたは、フォームのsubmitイベントの内側にあるので、

location.href="http://google.com"; 

しかしあなたのケースでは、十分ではない、とあなたはそのsubmitイベントをキャンセルしたい場合は、関数の内部event.preventDefault()を使用する必要があります。

だから、それはそのようなものでなければなりません:

if (password === '1234') { 
    event.preventDefault(); 
    location.href="http://google.com"; 
    return false; 
} 
+0

私は1つ、それはまだ動作しないことを試してみました... –

+0

あなたは全体の答えを読んでいましたか? – Dekel

+2

@ElinJung - 「うまくいきません」という情報はまったくありません...ブラウザの開発者ツールのコンソールとネットワークタブで、何が起きているのか、エラーがあるかどうかを確認してください - デバッグ101 –

関連する問題