
こんにちは・・・。
前回はphpで同じ質問をしたのですが、今回はjavascriptを使わなくてはなりません・・・OTL
重複質問のようで申し訳ないのですが、
連絡先方法【必須】をラジオボタンで選択した際、選択した項目(テキストエリア)を必須にしたいのです。
連絡先方法を必須にするやり方はわかりますが、それ以降がわかりません。。
どなたかご教授願います!!
<input type="radio" name="renraku" value="TEL">TEL
<input type="radio" name="renraku" value="FAX">FAX
<input type="radio" name="renraku" value="E-Mail">E-Mail
function CheckInput(){
/*----- check -----*/
flag = 0;
for ( i = 0 ; i < document.form_1.renraku.length ; i++){
if (document.form_1.renraku[i].checked){ flag = 1; }
}
if (!flag){
alert('御希望連絡方法を選択して下さい');
return false;
}
}
この続きを教えて下さい・・・お願い致します!
No.3ベストアンサー
- 回答日時:
記述のほう、<select>と間違えてました^^;
#2の方の回答でいいと思いますが、
チェックボックスは選択されているがテキストエリアに入力はされていない
というときのメッセージを変えられるようにしてみました。
<form name="form_1" onsubmit="return CheckInput(this);"><!--要素は好きに配置-->
<input type="radio" name="renraku" value="TEL">TEL
<input type="radio" name="renraku" value="FAX">FAX
<input type="radio" name="renraku" value="E-Mail">E-Mail
<textarea id="tTEL"></textarea>
<textarea id="tFAX"></textarea>
<textarea id="tE-Mail"></textarea></form>
function CheckInput(f){
var v,flag = 0;
for ( i = 0 ; i < f.renraku.length ; i++){
if (f.renraku[i].checked){flag = 1;
v=document.getElementById("t"+f.renraku[i].value).value;}
}
if (!flag){
alert('御希望連絡方法を選択して下さい');
return false;
}
if(!v){
alert('御希望連絡先を入力して下さい');return false;
}
return true;
}
この方法で出来ました!!
本当に、本当に、ありがとうございました~!!
もう少し、基礎から学ぼうと思います・・・。
ご丁寧にありがとうございました!
No.2
- 回答日時:
微妙にちがうかもしれませんが、こんなんでどうでしょう?
<script>
function CheckInput(f){
var flag = true;
for(var i=0;i<f.length;i++){
if (f[i].type=="radio" && f[i].name=="renraku" && f[i].checked){
flag = false;
var v=f[i].value;
}
}
if(v!="")
for(var i=0;i<f.length;i++){
if(f[i].type=="textarea" && f[i].name=="t"+v){
if(f[i].value=="") flag=true;
}
}
if(flag){
alert('御希望連絡方法を選択して下さい');
return false;
}
}
</script>
<form>
<input type="radio" name="renraku" value="TEL" id="renraku0"><label for="renraku0">TEL</label>
<input type="radio" name="renraku" value="FAX" id="renraku1"><label for="renraku1">FAX</label>
<input type="radio" name="renraku" value="E-Mail" id="renraku2"><label for="renraku2">E-Mail</label><br>
TEL:<br>
<textarea name="tTEL"></textarea><br>
FAX:<br>
<textarea name="tFAX"></textarea><br>
E-Mail:<br>
<textarea name="tE-Mail"></textarea>
<input type="submit" value="go!" onClick="return CheckInput(this.form)">
</form>
ありがとうございます♪
label要素、初めて知りました・・・。
使わせていただきます!!
今回はNO.2さんを参考にさせていただきましたが、こちらの方法も試して見ます♪
ご丁寧にありがとうございました!
No.1
- 回答日時:
<textarea id="tTEL"></textarea>
<textarea id="tFAX"></textarea>
<textarea id="tE-Mail"></textarea>
のようにテキストエリアを追加して、スクリプト部を以下のように追加。
//前略
if (!flag){
alert('御希望連絡方法を選択して下さい');
return false;
}
//ここから追加(returnがあるのでelseは省略してみました)
if(!document.getElementById("t"+document.form_1.renraku.value).value){
//必須のテキストエリアが空欄の場合の処理
}
//ここまで追加
ラジオボタンのvalueの値によって、空欄チェックをするオブジェクトを選んでいます。
ありがとうございます!!
が・・・動きませんでした・・・。
テキストエリアが空欄の時にアラートを鳴らす事はできないのでしょうか?
重ね重ね申し訳ありません・・・。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
ラジオボタンで選択した項目の...
-
<input>の選択肢をプルダウンメ...
-
Selectボックスの幅を自動で広...
-
javaScriptの変数をJavaの変数...
-
JavaScriptのfileオブジェクト...
-
<JavaScript>tableタグを入力不...
-
ASP.NETでNAME属性を固定にしたい
-
RegularExpressionValidatorの...
-
クリックされた罫表セルの行番...
-
同じ名前のセレクトがある場合...
-
onchangeイベントを強制的に発...
-
プルダウンで選択された値を別...
-
二次元配列に数字をランダムに...
-
sessionの値でボタンを活性・非...
-
JQueryで2つのテキストフィー...
-
cookie使用時にundefinedと表示...
-
doPostBack 関数について
-
【FORM】 リンク文字で submit...
-
tableの任意行にfocusをあてる
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
javascriptを使ってラジオボタ...
-
データベースの値を判断してラ...
-
Form内のselectを連動させるに...
-
JavaScriptでラジオボタンのチ...
-
ラジオボタンのチェックが外れ...
-
javascript 複数のラジオボタン...
-
ラジオボタンでチェックした項...
-
javascript作成してます。ラジ...
-
javascriptについて教えてください
-
javascriptによる動的なリンク...
-
ラジオボタン未チェックの場合...
-
JavaScriptで小数点も含めた複...
-
ラジオボタンでの動的項目の変...
-
チェックボックスとテキストボ...
-
チェックボックスのON/OFFに連...
-
ラジオボタンとif文
-
radio選択をクッキーに保存させ...
-
ラジオボタンの未選択チェック...
-
ラジオボタンのチェック数に応...
おすすめ情報