現在、XHTMLで簡単なログイン画面を作成しているのですが、
IEでは正常に動作するのに、Chromeではエラーとなってしまいます。
色々調べてみたのですが解決策が見つからないので
どなたか教えてください。
現象は
ログインボタンをクリックして.jsのclickLogin()を呼びます。
clickLogin()でとりあえず自分をもう一度呼ぶ処理を記述したのですが
document.myForm.action = "Test.xhtml";
でエラーとなります。(Chromeでは。。。)
ChromeとIEでは記述の仕方が違うのでしょうか?
【Test.xhtml】
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-style-type" content="text/css" />
<meta http-equiv="Content-script-Type" content="text/javascript" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<script type="text/javascript" src="Test.js?v=R001"></script>
<title>ログイン画面</title>
<script type="text/javascript"></script>
</head>
<body >
<form id="myForm" action="" name="myForm" method="post">
<div width="100%">
<div width="100%">
<table>
<tr>
<td>ログイン</td>
</tr>
<tr>
<td>
<table>
<tr>
<td align="right">UserID:</td>
<td align="left"><input type="text" id="txt_user_id" name="txt_user_id" size="30" /></td>
</tr>
<tr>
<td align="right">Password:</td>
<td align="left"><input type="password" id="txt_password" name="txt_password" size="30" /></td>
</tr>
<tr>
<td></td>
<td align="left"><br /> <input type="submit" value="ログイン" onclick="return clickLogin();" /></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</div>
</form>
</body>
</html>
【Test.js】
function clickLogin() {
var inpUserId = document.getElementById("txt_user_id").value;
var inpPassword = document.getElementById("txt_password").value;
// [UserID]入力チェック
inpUserId = inpUserId.trim();
if (inpUserId == "") {
return false;
}
// [Password]入力チェック
inpPassword = inpPassword.trim();
if (inpPassword == "") {
return false;
}
alert("1");
myForm.action = "Test.xhtml";
alert("2");
myForm.submit();
return true;
}
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
なんか動きそうな気もしますが・・・
>document.myForm.action
var myForm=document.getElementById("myForm");
してみては?
ちなみにもとファイルがTest.xhtmlならactionを書き換えてもそうでなくても同じじゃない?
また違うページを指定してしまうとjavascriptでしかログインできなくなるけど
ほんとうにそういうポリシーで大丈夫?
普通は送られてきたデータをサーバー側でチェックするもんだけど。
(必要項目の抜けなどユーザー補助は有効だけど)
回答ありがとうございます。
回答内容は昨日すでに試していますが、駄目でした。
本当はログインボタン押下でサーバー側でチェックをするのですが
まだそこまで実装していないので、とりあえず自分自身にpostしています。
何は他の方法はありませんでしょうか?
No.2
- 回答日時:
No.1さんの言うとおり、myFormオブジェクトが設定されていないので、動作しません。
以下のように、オブジェクトを取得する事で正常に動作します。
(Chrome バージョン 47.0.2526.106 mにて動作確認)
var inpUserId = document.getElementById("txt_user_id").value;
var inpPassword = document.getElementById("txt_password").value;
var myForm = document.getElementById("myForm"); ←これを追加。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- JavaScript switch文のswitch(n)の部分を複数の値にするか、if文に変えてほしいです。 1 2022/07/27 17:18
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript セレクトボックスを2つ設けて選択して初めてメッセを表示 1 2022/07/27 12:15
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript EasyUIのSubGrid(jquery)におけるObjectに入れた連想配列について 1 2022/05/02 11:21
- Visual Basic(VBA) Selenium.ChromeDriverの使い方について 7 2022/09/22 06:43
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
tableタグとformタグの組み合わせ
-
html でのテキスト結合について
-
同じクラス名はつけないほうが...
-
Firefoxを使ってるのですがズー...
-
formのinputなどの幅100%指定
-
テーブルの線を点線にする
-
Visual Studio で CLR 開発でデ...
-
Tableタグで作成した表の縮小
-
縦方向の位置決め
-
ブラウザの文字サイズを変える...
-
cssで、テーブルのtdの中の文字...
-
Tableタグ内のspan styleが適応...
-
HPに載せる写真にかっこいい...
-
前の質問のソースです
-
TABLEのセルの中の文字を行単位...
-
テーブルの位置を細かく指定し...
-
テーブルとテーブルの間隔について
-
テーブルタグの中にdivを含めて...
-
テーブルの任意の列を非表示に...
-
テーブルの行を折りたたみたい...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
html でのテキスト結合について
-
tableタグとformタグの組み合わせ
-
テーブルの一部分のセルだけに...
-
同じクラス名はつけないほうが...
-
テーブル内のテーブルの高さを...
-
XHTMLに関する質問 順序が逆に...
-
Tableタグ内のspan styleが適応...
-
Tableタグで作成した表の縮小
-
ブラウザによってテーブルのセ...
-
cssで、テーブルのtdの中の文字...
-
td要素内のdiv要素をセンタリン...
-
vbscriptで時計を作りたい
-
formのinputなどの幅100%指定
-
Firefoxを使ってるのですがズー...
-
テーブルの枠線に色が付かない
-
divで囲んだ文字が消える
-
TDタグ内での均等割付の仕方
-
表とリスト(ulとtable)の違い...
-
firefoxで「height: 100%;」と...
-
<img>タグにCSSのclass設定可能?
おすすめ情報