いくつかのラジオ ボタンがあり、どのラジオ ボタンが選択されているかに基づいて、さまざまな非表示の div を表示したいと考えています。HTML は次のようになります。
<form name="form1" id="my_form" method="post" action="">
<div><label><input type="radio" name="group1" value="opt1">opt1</label></div>
<div><label><input type="radio" name="group1" value="opt2">opt2</label></div>
<div><label><input type="radio" name="group1" value="opt3">opt3</label></div>
<input type="submit" value="Submit">
</form>
....
<style type="text/css">
.desc { display: none; }
</style>
....
<div id="opt1" class="desc">lorem ipsum dolor</div>
<div id="opt2" class="desc">consectetur adipisicing</div>
<div id="opt3" class="desc">sed do eiusmod tempor</div>
そして、ここに私のjQueryがあります:
$(document).ready(function(){
$("input[name$='group2']").click(function() {
var test = $(this).val();
$("#"+test).show();
});
});
私がそのようにしている理由は、ラジオ ボタンと div が動的に生成されているためです (ラジオ ボタンの値には常に対応する div があります)。上記のコードは部分的に機能します。正しいボタンがチェックされている場合は div が表示されますが、ボタンがチェックされていない場合は div を再び非表示にするコードを追加する必要があります。ありがとう!