質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

869閲覧

javascript window.location.href文が無視されます。

masakifukuta

総合スコア58

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/11/23 11:04

下記ソースにて、alert("入力okです。");まで実行されているのは確認できるのですが、その直ぐ後に
あるwindow.location.href="luck_login.php"分が実行されません。
どなたかお分かりになる方、教授下さい。よろしくお願い致します。

<head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>T&E合同会社 就労継続支援A型事業所 楽(ラック)</title> <style type="text/css"> ~ 略 ~ </style> <script language="javascript" type="text/javascript"> function checkStr(){ ~ 略 ~ } function checkMail(){ ~ 略 ~ } function check_kuhaku(){ var str1 = document.getElementById("userid").value; var str2 = document.getElementById("password").value; if((!str1)||(!str2)){ alert("必須項目に空欄があります。"); return false; }else{ alert("入力okです。"); e.preventDefault(); window.location.href="luck_login.php" return false; } } </script> </head> <body> <div align="center"> <img src="ラックロゴ.png"></br> <p></p> <form method="post"> <div class="s14">ログインID</div> <input type="text" id="userid" name ="userid" size="25" onchange="checkMail()"/> <div class="s14">パスワード</div> <input type="password" id="password" name ="password" size="25" onchange="checkStr()"/> </form> <div align="center"></div><br/><p></p> <a style="text-decoration:none;"> <button class="button" input type="button" onclick="check_kuhaku()"> ログイン</button></a></br> <a href="menber_registration.html" style="text-decoration:none;"> <button class="button">新規登録</button></a></br> </div> </div> </body> </html>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

実際にテストしていませんが
alertが表示されているのにlocarion.hrefしないってことは

JS

1 2e.preventDefault(); 3

が問題なのでは?

例えばeを宣言していないとかpassive: falseしていないとか

詳しくはQiitaの記事をご覧ください。

あと、location.hrefに「;」がないです。

投稿2019/11/23 11:31

編集2019/11/23 11:33
kyoya0819

総合スコア10429

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kyoya0819

2019/11/23 11:43 編集

テストしましたがe.preventDefault();を消したら動作しました
masakifukuta

2019/11/23 19:11

ご指摘通り、e.preventDefault();を消したら動作しました。 テストまでして頂いたようで、有難うございます。 感謝致します。
guest

0

a要素の中にbutton要素のような要素は文法上入れられません。ひとまずそこを修正してみてください。

<a>: アンカー要素 - HTML: HyperText Markup Language | MDN】
https://developer.mozilla.org/ja/docs/Web/HTML/Element/a#Properties

許可されている内容 透過的コンテンツで、フローコンテンツ (対話型コンテンツを除く) または記述コンテンツを含むもの

投稿2019/11/23 11:34

kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問