人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Javascriptの空欄チェックの質問です。
テキストフィールドで、複数の項目がすべて空欄だった場合、送信時ににアラートが表示されるようにしたいです。
・どれか一つでも入力されていれば送信できる
・全部が空欄だったらアラートで入力を促す
このような場合、どのようにプログラムを記述したらよいのか教えてください。
参考となるURLを教えていただいても、プログラムそのまま教えていただいてもどちらでもOKです。宜しくお願いいたします。

●質問者: vanda
●カテゴリ:ウェブ制作
✍キーワード:JavaScript URL アラート テキスト フィールド
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● yusukey
●35ポイント

http://yusuke.homeip.net/soba/

URLはテストに使ったツールのURLです。

こんな感じでしょうか。

<form action="hoge" onsubmit="return check()">

name:<input type="text" name="name" id="name">

address:<input type="text" name="address" id="address">

<input type="submit" onsubmit="return check()">

</form>

<script>function check(){ if(document.getElementById("name").value == "" && document.getElementById("address").value==""){alert("どれか一つ入力してください");return false;}return true;}</script>

◎質問者からの返答

ありがとうございます!

そう、このような感じです。

ちなみに、nameを

項目1、name="name1"

項目2、name="name2"

項目3、name="name3"・・・

のように、名前+数字で規則性を持たせたとき

プログラムの書き方をもっとスマートにさせることとかできるでしょうか?


2 ● yusukey
●35ポイント

こんな感じでいかがでしょう。はてな記法に疎いので改行がなく読みにくいです。ごめんなさい。

<form action="hoge" onsubmit="return check()">

name1:<input type="text" name="name1" id="name1">

name2:<input type="text" name="name2" id="name2">

<input type="submit" onsubmit="return check()">

</form>

<script>function check(){ var entered= false; var count = 1; while(true){ var elem = document.getElementById("name"+count); if(!elem){ break; } if(elem.value !=""){ entered = true; } count++;} if(!entered){ alert("どれか一つ入力してください"); return false; }return true;}</script>

◎質問者からの返答

ありがとうございました!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ