
No.5ベストアンサー
- 回答日時:
ANo.3の補足を受けて回答します。
必須入力項目が複数グループ存在し、それらをラジオ
ボタンで切り替えることを実現したい、という要望だ
とします。
この場合、使いやすさを考慮すると、ラジオボタンの
切替で必須入力項目グループの有効/無効が望ましい
でしょう。(誤ってラジオボタンを操作した場合、
これまでの入力がクリアされてしまうのは、ユーザの
望まない結果だからです。)
また、無効となったエレメントはサーバに送信されま
せん。
ですので、例えば必須入力項目グループ毎にフォーム
要素のエレメント名のルールを決めて、ループで処理
する方法はいかがでしょうか?
<script type="text/javascript">
<!--
// 指定prefixで始まるエレメントを全て、enableで
// 指定した有効/無効状態に変更する
function toggleElements(prefix, enable) {
for (var i = 0; i < sample.length; i++) {
if (document.sample.elements[i].name.substring(0, prefix.length) == prefix) {
document.sample.elements[i].disabled = !enable;
}
}
}
// 指定エレメントの値を元にグループ指定を排他制御する
function toggleGroup(element) {
var enable = element.value == '1';
toggleElements(enable ? '1_' : '2_', true);
toggleElements(!enable ? '1_' : '2_', false);
}
//-->
</script>
...
<body onload="document.sample.group[0].click()">
<form name="sample">
<fieldset name="1">
<legend><input type="radio" name="group" value="1" id="1" onclick="toggleGroup(this)"><label for="1">グループ1</label></legend>
<input type="radio" name="1_radio" value="a" id="a"><label for="a">A</label>
<input type="radio" name="1_radio" value="b" id="b"><label for="b">B</label>
</fieldset>
<fieldset name="2">
<legend><input type="radio" name="group" value="2" id="2" onclick="toggleGroup(this)"><label for="2">グループ2</label></legend>
<input type="radio" name="2_radio" value="c" id="c"><label for="c">C</label>
<input type="radio" name="2_radio" value="d" id="d"><label for="d">D</label>
</fieldset>
</form>
</body>
No.4
- 回答日時:
> できるでしょうか?
できます。
<form name="form1">
<input type="text" name="text1">
</form>
とあれば、
document.form1.text1.value = "";
でtext1の入力値が消えます。
No.3
- 回答日時:
JavaScriptを使わずに、ラジオボタンA~Dに同じnameを
指定する方法でも実現できます(下記ソース)が、
JavaScriptでラジオボタンのチェックをはずすソースを
知ることがこの質問の目的なのでしょうか?
<form name="sample">
<fieldset>
<legend>グループ1</legend>
<input type="radio" name="radio1" value="a" id="a"><label for="a">A</label>
<input type="radio" name="radio1" value="b" id="b"><label for="b">B</label>
</fieldset>
<fieldset>
<legend>グループ2</legend>
<input type="radio" name="radio1" value="c" id="c"><label for="c">C</label>
<input type="radio" name="radio1" value="d" id="d"><label for="d">D</label>
</fieldset>
</form>
この回答への補足
やりたい事は、いくつかのラジオボタンといくつかの入力フォームがあって、選んだラジオボタンによって必須の入力フォームが変わるのです。だからラジオボタンの選択が変わったら、必須も変わるのですが、ラジオボタンの選択が変わって、必須項目じゃないフォームに入力されていたら、そこだけクリアしたいのです。できるでしょうか?
補足日時:2004/09/30 23:49No.2
- 回答日時:
こんな感じでいいかと思います。
アイデアとしては、フォームを分けて、リセットするってことです。
<script type="text/javascript">
<!--
function check(f){
if(f.name=="radio1"){
FORM2.reset();
}
if(f.name=="radio2"){
FORM1.reset();
}
}
// -->
</script>
ラジオボタンのグループ排他制御
<FORM NAME="FORM1">
<fieldset><legend>グループ1</legend>
<input type="radio" name="radio1" value="A" id="A" onclick="check(this)"><label for="A">A</label>
<input type="radio" name="radio1" value="B" id="B" onclick="check(this)"><label for="B">B</label>
</fieldset>
</FORM>
<br>
<FORM NAME="FORM2">
<fieldset><legend>グループ2</legend>
<input type="radio" name="radio2" value="C" id="C" onclick="check(this)"><label for="C">C</label>
<input type="radio" name="radio2" value="D" id="D" onclick="check(this)"><label for="D">D</label>
</fieldset>
</FORM>
No.1
- 回答日時:
方法としては、CまたはDのonClickイベントでFunctionを走らせて、CheckedプロパティがTrueならばAとBのCheckedプロパティにFalseをセットしてあげればいいのではないかと思います。
Function(){
if(form.C.checked=True){
form.A.checked=False;
form.B.checked=False;
}
} みたいな?
具体的なソースは、専門家の方にお任せします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
ラジオボタンでdisabledとchecked
-
ラジオボタンでチェックした項...
-
ラジオボタンのチェック数に応...
-
ボタンの無効化
-
return trueとreturn falseの用...
-
プルダウンで選択すると、DBの...
-
hiddenのvalueの値を変えたい
-
<JavaScript>tableタグを入力不...
-
JavaScriptで特定のtdタグにcla...
-
onchangeイベントを強制的に発...
-
特定<table>内の<td>の色を変える
-
ハイパーリンクを別ウインドウ...
-
CSVファイルを読みこみ、プルダ...
-
<input>の選択肢をプルダウンメ...
-
【jQuery】input nameの文字列...
-
VBSでブラウザ上のテキストボッ...
-
jQueryのプラグイン「Tablesort...
-
ボタンかリンクをクリックする...
-
プルダウン選択を変更すると、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ラジオボタンにタブインデック...
-
javascript作成してます。ラジ...
-
Javascriptを使って動的にラジ...
-
ラジオボタンでdisabledとchecked
-
ラジオボタンのチェックが外れ...
-
CGI.pmでラジオボタンを思い通...
-
文字列を表示/非表示させつつ、...
-
リセットボタンでクリアできな...
-
データベースの値を判断してラ...
-
ラジオボタンのValueを受け取り...
-
ラジオボタンとif文
-
ラジオボタンの選択によってチ...
-
ログ入力支援ツールの作成方法
-
ラジオボタンのチェック数に応...
-
2項目計算って可能でしょうか?
-
JavaScript フォームでのラジオ...
-
Formのラジオボタンリセット方法
-
チェックボックス とラジオボ...
-
【javascript】firefoxでの、al...
-
ラジオボタンを使って、検索ペ...
おすすめ情報