質問: IE8で動くログイン画面が、FireFoxでは動かない htmlとJavaScriptを別ファイルに記述し、ログイン画面を作成しております。 このhtmlは、テキストボックスに入力されたIDとPASSWORDを、 login.phpに渡しているだけです。 onmouseoverやonmouseoutは正常に動いておりますので、 JavaScriptがOFFと言うオチではないと考えています。 おそらくsubmitがfirefoxでは正常に動いていないのだと考えられますが、 どうすれば解決できるのか、ご教授くださいませ。 Web開発を始めて日が浅く、基本的な事を質問してしまっているかもしれませんが 何卒よろしくお願いします。 ソースはこのような感じです。 【login.html】(テキストボックスとログインボタン周辺のみ) 社員ID: PassWord: 【login.js】(login.htmlで使用するJSを記述しています) // ログインボタンマウスオーバー function Onmouseoverlogin(){ document.btnlogin.src='images/login2.gif'; } // ログインボタンマウスアウト function Onmouseoutlogin(){ document.btnlogin.src='images/login.gif'; } // ログインクリック時 function login(id,pass){ //チェック等省略します。 document.form_login.submit(); }
回答: コンテンツの全体がないので確実なことは言えませんが、ログインボタンの4行目 onclick="login(id_txtbox.value,password_txtbox.value); が間違っています。 文法上、引数にJavaScriptの変数は指定できません。 たまたまIEの場合は正常に動作しているだけでしょう。 ここで引数を渡さないで、関数loginの内部で document.form_login.id_txtbox.valueや document.form_login.password_txtbox.valueを参照しても支障はないかと存じます。