ラジオグループ内のすべてのラジオボタンを選択解除する方法を知っていますか?
HTML:
<div id="emptimfields">
<label id="lbl_emptim">How regulary do you employ people to help cultivate your land? </label><br/><br/>
<fieldset data-role="controlgroup" data-type="vertical" id="emptim">
<input name="emptim" id="radio1" value="fromtimetotime" type="radio" openmrs-valuecoded="" />
<label for="radio1"> From time to time </label>
<input name="emptim" id="radio2" value="allthetime" type="radio" openmrs-valuecoded="" />
<label for="radio2">All the time</label>
<input name="emptim" id="radio3" value="dontknow" type="radio" openmrs-valuecoded="" />
<label for="radio3"> Don't know </label>
</fieldset>
</div>
JQuery側:
$('input:radio[name=emptim]:checked').prop('checked', false); // doesn't work
確かに基本的なものが欠けていますが、何が問題なのかわかりません。
最初に、[はい]をチェックしてから、2番目のラジオグループの値をチェックします。
次に、[いいえ]をオンにして、2番目のラジオグループを非表示にします。
次に、次にクリックすると、チェックしたものの値を取得します(ただし、以前はチェックしていなかったため、ここではアラートを表示したくないため、radioButtonを「随時」チェックを外してください):
最後に、私が戻ってきても、何も起こりませんでした:
クラス名を付けて試してみてください:
_$('.classname').prop('checked', false);
_
1.6よりも古いバージョンのjQueryを使用する場合は、次の条件を満たしている必要があります。
_ $('<selector>').attr('checked', false);
_
編集:
メソッド.checkboxradio("refresh");
の呼び出しも機能しました。
$('input:radio[name=indicatorType]').each(function () { $(this).prop('checked', false); });
ラジオグループの「チェックされていない」ラジオボタン全体を作成するための代替ソリューション(上記のコードサンプルでは「indicatorType」)。
これでうまくいくはずです。制御グループを強制的に更新するには、最後にある更新オプションに注意してください。
この方法のもう1つの利点は、ページ上のすべてのラジオコントロールではなく、名前で特定のラジオグループをターゲットにすることです。
$('input:radio[name=emptim]:checked').prop('checked', false).checkboxradio("refresh");
小道具は私には機能しません、これにより完全に機能します:
('input:radio[name="RadioName"]').each(function () { $(this).attr('checked', false); });