- ベストアンサー
空白チェック
下記はテキストボックスのいずれかに空白があればalertで知らせるものですが、特定のテキストボックスになんらかの印をつけておいて、それのみチェックできないでしょうか。nama="" の名称以外の取得の方法で。 function EmptyCheck(){ i=0; while(i<20){ if(!document.main.elements[i].value){ alert("入力されていない項目があります。"); return false; } i++; } }
- s-holmes
- お礼率47% (767/1609)
- JavaScript
- 回答数3
- ありがとう数1
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
20個のテキストボックスのうち、2番目と3番目のボックスに チェックがある場合を str = "01100000000000000000" のように表して、 function EmptyCheck(){ i=0; while(i<20){ if(str.charAt(i) || !document.main.elements[i].value){ alert("入力されていない項目があります。"); return false; } i++; } } これで、2番目と3番のチェックボックスの空欄の禁止通知を することができそうです。
その他の回答 (2)
- A__
- ベストアンサー率47% (22/46)
その方法を何と呼べばいいかは分からなかったよ。 ソースじゃなくて言葉で伝えるんでしょ。 俺だったら、 それぞれのボックスに0か1のbool値を持たせる。 それぞれのbool値は0と1で構成競れた1つの文字列にまとめて置き換えて、 その文字列のN番目の文字をN番目のテキストボックスに対応させる。 という感じだよ。
お礼
回答ありがとうございました。 >0か1のbool値 聞いたこともない言葉でびっくりです。ネットで検索したらいくらでも出てきました。 勉強になりました。 (^^;
- A__
- ベストアンサー率47% (22/46)
ごめんなさい。間違えました。 || じゃなくて、 && でした。
関連するQ&A
- ネスケで動かない空白チェック
下記のようにリストボックスの未選択をチェックしていますが、ネスケだと動きません。アドバイスをいただけないでしょうか。 function submitCheck(){ for( i=0 ; i<document.main.length ; i++ ){ if(document.main.elements[i].type == "select-one" && document.main.elements[i].value == "err"){ alert("未選択項目があります。"); document.main.elements[i].focus(); return false; } } } <FORM NAME="main" ACTION="test.cgi" METHOD="post" onSubmit="return submitCheck()"> <SELECT NAME="性別"> <OPTION value="err" SELECTED>↓【選択して下さい】</OPTION> <OPTION>男</OPTION> <OPTION>女</OPTION> </SELECT> <INPUT TYPE="submit" VALUE="送 信" onClick="document.main.name.value=''">
- ベストアンサー
- JavaScript
- チェックボックスの選択チェック
ラジオボタンの選択チェック、セレクトボタンの選択チェックのあとにチェックボックスの選択チェックをしたいのですが、どのように入れればよいのでしょうか。教えてください。 ↓参考までに↓ function check() { var flag=0; if( document.form1.seibetu.length){ flag=1; var i; for(i=0; i<document.form1.seibetu.length; i++) if(document.form1.seibetu[i].checked)flag=false; } if(flag){ alert('性別が選択されていません'); return false; } if(document.form1.nenrei.value=="")flag=true; if(flag){ alert('年齢が選択されていません'); return false; } if( document.form1.Q1.length){ flag=1; var i; for(var i=0; i<document.form1.Q1.length; i++) if(document.form1.Q1[i].checked)flag=false; if(flag){ alert('Q1が選択されていません'); return false; } else {★★★ここに入れたい★★★ ;} } }
- 締切済み
- その他([技術者向] コンピューター)
- JavaScriptでの空白チェックの方法
ユーザー登録ページで、項目に空白が入っているかを調べたいと 思っています。 (入力する項目) ・ユーザID ・パスワード ・名前(カナ) ・性別(←ラジオボタンで選択する) ・生年月日(←西暦のみ入力し、月日は選択メニューより選ぶ) このうち、性別と月日は未入力になることはないのですが、 他の項目に関しては、テキストボックスなので、以下のチェックを つけました。 <SCRIPT language="JavaScript"> <!-- function formCheck() { if (document.tourokuForm.userId.value == "" || document.tourokuForm.passWord.value == "" || document.tourokuForm.name.value == "" || document.tourokuForm.year.value == "" ) { alert("すべての項目を入力してください。"); return false; } } //--> </SCRIPT> という風なチェックを行っています。 項目の未入力チェックはうまくいくのですが、値ではなく、 「半角空白」、又は「全角空白」のみ入れたときにチェックされず、 空白のまま次のページへとんでしまいます。 コードを使って判断させようと思いましたが、リファレンスの通り に書いてもうまくいきませんでした。 もし知っておられる方がいましたら、ぜひ教えてください!
- ベストアンサー
- JavaScript
- フォームの入力チェックをすると既に入力した項目が消える
実は過去の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>
- ベストアンサー
- JavaScript
- 文字列に空白を含んだ場合の処理
現在、文字列の入力チェックの関数を作成しています。 function checkMemberId() { if(document.form1.memberId.value==undefined){ alert("番号を入力してください。"); return false; }else if(??????????){ alert("空白が含まれています。"); return false; }else { alert("半角数字を入力してください。"); return false; } } 上記の else if の条件に、document.form1.memberIdに空白を含んだ文字列が入力されたらアラートメッセージを出すという処理を記述したいのですが、どういう処理を記述すればよいのでしょうか。 空白は全角・半角とも対象で、すべて空白が入力された時も同様の処理にしたいです。 以下、該当のHTML部です。 <form name="form1"> <input type="text" name="memberId"> </form> 以上、よろしくお願い致します。
- ベストアンサー
- JavaScript
- ネスケで動かないjavascriptの調べ方
下記はセレクトボックスを選択させるためのものですが、IEでは動きますが、NNでは動きません。この時に、何かで調べようとするときに、「何」を調べればいいのかさっぱりです。できれば、 1番目に○を調べ、 2番目に○を調べ、 というような手順についてアドバイスいただけないでしょうか。 <SCRIPT language=JavaScript> function submitCheck(){ for( i=0 ; i<document.main.length ; i++ ){ if(document.main.elements[i].type == "select-one" && document.main.elements[i].value == "err"){ alert("未選択項目があります。"); document.main.elements[i].focus(); return false; } } } </SCRIPT> <FORM NAME=main ACTION="sample.cgi" METHOD="POST" ENCTYPE="application/x-www-form-urlencoded" onSubmit="return submitCheck()"> <SELECT NAME="kubun"><OPTION SELECTED value="err">↓【選択して下さい】</OPTION> <OPTION>りんご</OPTION> <OPTION>みかん</OPTION> </SELECT> <INPUT TYPE="SUBMIT" NAME="Submit" VALUE="送信"></form>
- ベストアンサー
- JavaScript
- アンケート送信のチェックについて
初心者で本を見ながらアンケートを作っています。 質問事項はラジオボタンで選ぶようになっていて、 送信時にチェックされていない項目があったら「すべての項目をチェックしてください」とメッセージを出したいです。 ある本に「フォームに空欄がないか確認する」ソースがあったのでそれを応用したいのですが上手くできません。 =====ソースは下記です。===== <script language="JavaScript"> <!-- function check(){ for( i=0; i<document.form1.length; i++ ){ if(document.form1.elements[i].type =="radio"){ if(document.form1.elements[i].value ==""){ alert("すべての項目にチェックをしてください"); return false; } } } return true; } //--> </script> ~~~~ ~~~~ <FORM NAME="form1" action="****/*****.pl" method="POST" onSubmit="return check()"> ~~~ ~~~ =====ここまで 本にはtype =="radio"のところが"text"になっていたのですが、エレメントの種類には"radio"もあったので これをいれればチェック出来ると思ったのですが、チェックしないで送信ができてしまいます。 どなたかご教授お願いします。
- ベストアンサー
- JavaScript
- 別フレームへの必須入力チェック処理を行ないたい
ページ構成がフレーム仕様になっていて、ヘッダページ部分にある確認ボタンを押すことで、 メインページ(フレーム名:main)部分にある入力項目の複数項目に対する必須入力チェックを行ないたいのですが、うまく処理が実行されません。 if文の条件を、if (parent.main.document.forms[0].elements[0].value == "")のようにすると、 正しく処理されますが、入力項目の数だけ記述しなければならず、さらに入力項目の数は決まっていません。 どなたか解決策をご教授いただけませんでしょうか。 <SCRIPT language="javascript"> <!-- function formchk() { if (parent.main.document.f1.food.value == "") { alert("食べ物 の項目が未入力です"); parent.main.document.f1.food.focus(); return false; } if (parent.main.document.f1.drink.value == "") { alert("飲み物 の項目が未入力です"); parent.main.document.f1.drink.focus(); return false; } } // --> </SCRIPT>
- ベストアンサー
- JavaScript
- チェックしなくても、確認のウインドウがでる
チェックしなくても、確認のウインドウがでてしまうのですが、どこがいけないのでしょうか <SCRIPT language=JavaScript> function SubmitCheck() } if (document.Order.elements[kiyaku_fn].value == ""){ return false; } else if (document.Order.elements[kiyaku_fn].value == "同意"){ alert("規約に同意して下さい"); return false; } var confirm_str = ""; confirm_str = "下記の事項をご確認ください。\n" + "正しければ、OKを押してください。\n" + "--------------------------------\n" + "規約:" + document.Order.elements[kiyaku_fn].value + "\n\n"; temp = 0; confirm_str += "--------------------------------\n"; if(confirm(confirm_str)){ return true; } else return false; return true; } </SCRIPT> <INPUT id=checkbox1 type=checkbox value="同意" name=checkbox1>規約
- 締切済み
- JavaScript
- ネスケで文字化けするjavascript
下記はenterキーを押した時に次のテキストボックスなどにフォーカスを移動するjavascriptです。しかし、ネスケだとテキストボックスに入力した文字が文字化けしてしまいます。 <!-- ns4 = (document.layers)? true:false ie4 = (document.all)? true:false function cf() { for (i = 0; i < document.forms[0].elements.length; i++) { if ((ns4) && (document.forms[0].elements[i].type != "hidden") || (ie4) && (document.forms[0].elements[i].type != "hidden" )) { document.forms[0].elements[i].focus() break } } } function keyDown(e) { if (ns4) {PKey=e.which; el = e.target.type ; sk = e.modifiers} if (ie4) {PKey=event.keyCode; el = event.srcElement.tagName; sk = event.shiftKey} if (PKey == "13") { if (el.toLowerCase() != "textarea") { keyDowntest(e) return false; } else { if ((ns4) && (sk == '4') || (ie4) && (sk)) { keyDowntest(e) return false; } } } } function keyDowntest(e) { for (var i = 0; i < document.forms[0].elements.length; i++) { if ((ie4) && (document.forms[0].elements[i] == event.srcElement) || (ns4) && (document.forms[0].elements[i] == e.target)) { if ((i + 1) == document.forms[0].elements.length) document.forms[0].elements[0].focus() else for (; i < document.forms[0].elements.length; i++) { if ((ns4) && (document.forms[0].elements[i+1].type != "hidden") || (ie4) && (document.forms[0].elements[i+1].type != "hidden" )) { document.forms[0].elements[i+1].focus() break } } break } } } document.onkeydown = keyDown if (ns4) document.captureEvents(Event.KEYDOWN) //-->
- ベストアンサー
- JavaScript
補足
回答ありがとうございました。 いろいろな方法があるものですね。 ちなみによろしければ、このような方法を何と呼べばいいか教えていただけませんか? str = "01100000000000000000" この部分を他の人に伝える時、「テキストボックスに○○○を足して」・・・のように説明するときの説明のしかたというか・・。 #質問のしかたに自信なし。 (^^;