
実は過去のQ&Aの中でご紹介されていた
ホームページを拝見させて頂いたのですが、
残念ながら私の応用力が足りず、
上手く作ることが出来ません。
下記のように書いてみたのですが、
これでは未入力のメッセージにOKを押すと
その前に入力したものが全て消えてしまいます。
何方か、正しい書き方をご教示下さいますよう
宜しくお願い申し上げます。
<script language="JavaScript">
<!--
function checkForm(){
if(document.form1.chk1.checked == false
&& document.form1.chk2.checked == false)
{
alert('チェックなし');
return false;
}
{
flag = 0;
for ( i = 0 ; i < document.form1.radiobtn.length ; i++){
if (document.form1.radiobtn[i].checked){ flag = 1; }
}
if (!flag){
alert('ラジオなし');
return false;
}
if(document.form1.sel.selectedIndex == 0){
alert('メニューなし');
document.form1.sel.focus();
return false;
}
if(document.form1.bun.value == ""){
alert('文字なし');
document.form1.bun.focus();
return false;
}
}
return true;
}
//-->
</script>
No.3ベストアンサー
- 回答日時:
消える理由は、フォームactionのリンク先を設定せずにローカルで試しているためではないでしょうか?
リンク先を指定していしない場合は、もう一度今見ているページをロードするため消えているように見えてしますということです。
こんな回答でよろしかったでしょうか?
とりあえずはソースにエラーはないとおもわれます。
AquaSkyMoon様
2度もお答え頂いて、大変感謝しております。
#3のご回答で全て解決致しました。
form action に送り先を指定すると、
ちゃんと消えずに書き込めました\(^o^)/
分かってみると単純なことでしたが、
どうしても分からなくて困っていました。
今回のご回答のおかげで思うとおりのフォームが作れます。
本当にどうもありがとうございました。
No.5
- 回答日時:
#4を訂正させてください。
すみません、すっごい寝ぼけてました。
>2回onsubmitしているから、おかしいのではないでしょうか?
↑これはいいとして、対応策は、間違ってます。
submitボタンのonClickイベントを削除
で、いけると思います。
kappa_neko様
わざわざ2回もご回答ありがとうございました。
onClick="checkForm()" を消して
<input type="submit" value="送信">にするということですよね?
残念ながらこれだけでは上手く動かず、
form actionに送り先を指定すると
ちゃんと動作してくれました。
結局問題は送り先を指定していなかったことのようです。
>2回onsubmitしているから、おかしいのではないでしょうか?
というご指摘、確かにそうですよね!
これに関しては全然疑問に思いませんでした。
もっといろんなサイトや参考書を見て勉強してみます。
本当にありがとうございました。
No.4
- 回答日時:
2回onsubmitしているから、おかしいのではないでしょうか?
1. formタグのonSubmitを削除 & checkFormファンクション内で、
documnt.form1.submit();
(return trueではなくて。)
を追加。
2. submitボタンを普通のボタンにする。
↑どっちかで解決すると思います。
(すみません、試したわけではないです。)
No.2
- 回答日時:
少しみてみましたが
一度クッキーで内容を取得するとよろしいかと。
先の回答の方がいらっしゃるので、
詳細はお任せします。
kaiu様
ご回答ありがとうございました。
単純に、form action に送り先を指定することで
解決することができました。
>一度クッキーで内容を取得するとよろしいかと。
そういうやり方もあるのですね。
と言っても、具体的なやり方は調べないとわからないという、
本当にまだまだド素人のレベルなので、
上級すぎる技かもしれませんが(^^ゞ
でも、貴重なお時間にわざわざご回答下さったこと、
本当に感謝致します。
ありがとうございました。
No.1
- 回答日時:
しっかりと内容を見せてもらっていないのと、
フォームのHTMLがあれば分かりやすいのですが、、、
とりあえず1点
最初のほうのIF分でカッコがあまってるように思えるのですが、確認していないのでまちがってたらすいません。
>function checkForm(){
if(document.form1.chk1.checked == false
&& document.form1.chk2.checked == false)
{
alert('チェックなし');
return false;
}
<<-ここに「else」がはいるのでは??
{
flag =
この回答への補足
チェックボックスとラジオボタンのvalueが抜けてました。
【訂正後】
<body>
<form name="form1" method="post" action="" onSubmit="return
checkForm()">
<input type="checkbox" name="chk1" value="1">1
<input type="checkbox" name="chk2" value="2">2<br>
<input type="radio" name="radiobtn" value="1">1
<input type="radio" name="radiobtn" value="2">2<br>
<select name="sel">
<option>▽選択</option>
<option value="1">項目1</option>
<option value="2">項目2</option>
</select><br><br>
<input type="text" name="bun"><br>
<input type="submit" value="送信" onClick="checkForm()">
</form>
</body>
早速のご回答ありがとうございます。
フォームの部分は文字数の関係で投稿できなかったのですが、
下記のようにしております。
<body>
<form name="form1" method="post" action="" onSubmit="return
checkForm()">
<input type="checkbox" name="chk1">1
<input type="checkbox" name="chk2">2<br>
<input type="radio" name="radiobtn">1
<input type="radio" name="radiobtn">2<br>
<select name="sel">
<option>▽選択</option>
<option value="1">項目1</option>
<option value="2">項目2</option>
</select><br><br>
<input type="text" name="bun"><br>
<input type="submit" value="送信" onClick="checkForm()">
</form>
</body>
また、ご指摘の通りelseを入れてみたのですが
やはり上手くいきませんでした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript javascript作成してます。ラジオボタンで判定するコードを書いてます。 1 2023/07/18 11:03
- JavaScript 画像の表示位置 3 2022/12/23 08:25
- JavaScript 追加ボタンを押した際に ok ボタンを押した場合のみ入力値が追記されるようにしたいです 6 2022/05/29 09:57
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- FX・外国為替取引 mql4のコンパイルエラー箇所の修正お願いします。 1 2023/03/15 16:14
- その他(プログラミング・Web制作) pythonのDjangoでHTML内で変数を利用したいです 3 2022/05/15 15:33
- Visual Basic(VBA) 動きっぱなしです。止め方とプロシージャの間違いを教えて下さい! 5 2022/08/15 23:08
- Visual Basic(VBA) excel VBA if文について 3 2022/03/27 17:42
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/07 21:04
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
return trueとreturn falseの用...
-
ラジオボタンのNullチェック
-
【javascript】 年齢計算
-
Visual Studioのデザインでの非...
-
TEXTAREAに入力した改行コード...
-
slickのレスポンシブ > center...
-
sessionの値でボタンを活性・非...
-
ダミーフォームの内容を送信用...
-
javascriptでoptionタグを削除...
-
FormのonsubmitでJavaスクリプ...
-
tableの任意行にfocusをあてる
-
jQuery セレクトボックスで選択...
-
JavaScriptのfileオブジェクト...
-
ラジオボタンでクリックした値...
-
<JavaScript>tableタグを入力不...
-
プルダウンで選択すると、DBの...
-
onclickが動作しない
-
今日の日付を自動的にセレクト...
-
ラジオボタンでの動的項目の変...
-
TextBoxに半角数字以外を入れた...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
return trueとreturn falseの用...
-
slickのレスポンシブ > center...
-
ドロップダウンリストボックス...
-
COBOLの数字チェック
-
ツリービューのチェックボック...
-
Visual Studioのデザインでの非...
-
【javascript】 年齢計算
-
フォームの入力チェックをする...
-
ラジオボタンのNullチェック
-
Tabキーでのカーソルの移動...
-
文字列がA-F 0-9であるかチェ...
-
2次元配列で2項目についてソー...
-
JavaScriptde途中で、「exit」...
-
TEXTAREAに入力した改行コード...
-
未入力のラジオボタンに、alert...
-
!!winVar
-
チェックに応じて違うチェック...
-
チェックボックスのチェック。...
-
リロードしないようにするには
-
度胸試しのJavaScript
おすすめ情報