
No.2ベストアンサー
- 回答日時:
あの~
f0.Email.value.indexOf("f0.Email.value",0)
まずこれは何をする処理かおわかりでしょうか。
まぁそれはおいといて、
やりたい事は、
「1回目の通し入力」と「2回目@の前」+「文字@」+「2回目@の後ろ」
の比較ですよね?
if (f0.Email.value == f0.Email2.value + "@" + f0.Email3.value) {
}else{
alert("アドレスが一致しません。");
}
尚望ましいのは、メールアドレスは大文字小文字が関係ないので、
if (f0.Email.value.toLowerCase() == f0.Email2.value.toLowerCase() + "@" + f0.Email3.value.toLowerCase() ) {
}else{
alert("アドレスが一致しません。");
}
とするのも良いかも。
で、当初のindexOfは文字の検索ですから、
部分一致はは調べられますが完全一致を調べる事はできません。
abcde@meal.com に対して abc と mail と入力されたら・・・。
"f0.Email.value" はエフゼロピリオド・・・という文字列を表します。定数です。
また、2回目は@の前と後ろを分けて入力のデータがそもそも扱われていないのが・・・。
これから推測するに、
これからは直ぐに処理を書かれるのではなく、
まず処理の流れや使う変数などを何かしらに書いて
それから命令を書くようにする事をお勧めします。
(これを流れ図といいますが、慣れれば頭の中でこれが直ぐに書ける様になります。)
No.4
- 回答日時:
キモの部分は#2さんが回答されているので、その他の部分で気がついた点を挙げます。
><input size="50" name="Name">
タグの要素名とかぶりそうな名前は避けた方が無難です。
foms[0].nameとforms[0].Nameなどで間違えやすくなります。
>(f0.visit[1].checked == "")
おそらくラジオボタンが省略された場所にあると思われますが、
checkedはtrue/falseです。
if (!f0.visit[1].checked and ~~
といった使い方になります。
要素数が変更になった時を考えて、以下のようなループにしておくとなお良し…です。
(getElementsByNameをサポートしていないようなブラウザを考えると一つ一つifの条件に並べた方がいいですが)
var vcheck = false, visits = document.getElementsByName("visit");
for (var i = 0; i < visits.length; i++) {
vcheck = vcheck || visits[i].checked;
}
if (vcheck) {
alert("チェックあり");
} else {
alert("チェック無");
}
No.1
- 回答日時:
>思うように動きません
実際のソース(HTML部分、JavaScript部分)などを可能な限り記載してください。
また、どう動かないのか等も記述が欲しいです。
この回答への補足
javascript部分です。
-------------------------------------------------
function FormCheck() {
var f0 = document.forms[0];
if (f0.Name.value == "") {
alert("名前を入力してください。");
f0.Name.focus();
return false;
}
if (f0.Email.value == "") {
alert("メールアドレスを入力してください。");
f0.Email.focus();
}
else if(f0.Email.value.indexOf("f0.Email.value",0)<=0){
alert("アドレスが一致しません。");
}
}
if ((f0.visit[0].checked == "") &&
(f0.visit[1].checked == "") &&
(f0.visit[2].checked == "") &&
(f0.visit[3].checked == "") &&
(f0.visit[4].checked == "")) {
alert("訪問回数を押して下さい");
return false ;
f0.visit.focus();
}
return true;
}
補足です。(body部分)
-------------------------------------------------
<table width="536" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center">
<table width="559" border="0" cellspacing="0" cellpadding="0">
<form onsubmit="return FormCheck(this);" action="../form2mail/form2mail.cgi" method="post">
<input type="hidden" name="_subject" value="アンケート">
<input type="hidden" name="_location" value="../p00/thank.html">
<input type="hidden" name="_emailset" value="Email">
<tr>
<td width="100" valign="top" class="body">
お名前:</td>
<td width="459"><input size="50" name="Name"> </td>
</tr>
<tr>
<td width="100" valign="top" class="body">
メールアドレス:</td>
<td width="459"><input size="50" type="text" name="Email" value=""> </td>
</tr>
<tr>
<td width="100" valign="top" class="body">
メールアドレス(再入力):</td>
<td width="459"><input size="20" type="text" name="Email2" value="">@<input size="20" type="text" name="Email3" value=""> </td>
</tr>
<tr>
<td width="270" valign="top" class="body" colspan="2">
訪問履歴</td>
</tr>
<tr>
<td></td>
<td width="459"><input type="submit" value=" 送信 " name="submit"><input type="reset" value=" リセット " name="reset"></td>
</tr>
</form>
</table>
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JSPとJavaScriptの連携について...
-
日付入力欄の表示形式を自動的...
-
入力モード 自動 切り替え
-
条件により、リンク先に画面遷...
-
onClickとsubmitの処理順序
-
javascriptで入力フォームが空...
-
テキストボックス入力を半角英...
-
テキストフィールドに入力した...
-
tabindexの取得
-
指定したタグを書き換えるには?
-
画面表示とともにtableの指定の...
-
プルダウンで選択すると、DBの...
-
【jQuery】input nameの文字列...
-
return trueとreturn falseの用...
-
<JavaScript>tableタグを入力不...
-
onclickが動作しない
-
動的にTabindexの値を変えたい!
-
CSVファイルを読みこみ、プルダ...
-
テキストボックスの値同士を比...
-
どちらかひとつのテキストボッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
onClickとsubmitの処理順序
-
条件により、リンク先に画面遷...
-
JSPとJavaScriptの連携について...
-
Webブラウザにてページのりロー...
-
日付入力欄の表示形式を自動的...
-
javascriptで入力フォームが空...
-
フォームの値が0だったら空白...
-
メールフォームの入力確認(チ...
-
txtbox「確認用メール」へのペ...
-
JavaScriptを使って、整合する方法
-
イベント発生時に入力待ち状態...
-
Javascriptで同じ数字を2回打...
-
javascriptの勉強中です
-
テキストボックス入力を半角英...
-
入力欄の消去方
-
vbsでフォームに値を入力できない
-
文末の改行コードを削除したい
-
フォームの表示が消えてしまう...
-
フォームから入力すると、入力...
-
Javascriptが機能せず原因が分...
おすすめ情報