複数のラジオボタンのセットがあり、この.find()
関数を使用して、同じグループ内のラジオボタンの値を動的に検索しようとしています。
ただし、未定義を返し続けます。
<fieldset>
<div id="border1">
<input id="radio1a" type="radio" id="set1" class="animals radio" value="Zebra">
<input id="radio1b" type="radio" id="set1" class="animals radio" value="Lion">
</div>
<div id="border2">
<input id="radio2a" type="radio" id="set2" class="fruit" value="Oranges">
<input id="radio2b" type="radio" id="set2" class="fruit" value="Grapes">
</div>
</fieldset>
<fieldset>
<div class="border1">
<input id="radio3a" type="radio" id="set3" class="animals radio" value="Monkey">
<input id="radio3b" type="radio" id="set3" class="animals radio" value="Parrot">
</div>
<div class="border2">
<input id="radio4a" type="radio" id="set4" class="fruit radio" value="Bananas">
<input id="radio4b" type="radio" id="set4" class="fruit radio" value="Cherries">
</div>
</fieldset>
(申し訳ありませんが、同じIDを入力するつもりはありませんでした。コピー/貼り付けでした。)
私はjqueryを使用して動的に値を見つけようとしています:
$(".animals .radio").change(function()
{
alert($(this).closest('fieldset').find('.fruit').val());
etc.
}
しかし、それは戻り続けますundefined
また試した:
$(this).closest('fieldset').find('.fruit:checked').val()
これにアプローチする別の方法はありますか?ラジオボタンのすべてのセットに対してコードを書く必要はありません。