jQuery には非常に単純な要件があります。ラジオ ボタンがオンになっている場合は一連のボックスをオンにし、別のボタンがオンになっている場合はすべてのボックスをオフにすることです。
jqueryは機能しますが、一度しか機能しません。つまり、クリックしてすべてをチェックし(すべてのボックスをチェック)、クリックしてクリアし(すべてのボックスをクリア)、もう一度クリックしてすべてをチェックすると、効果はありません。同様に、いくつかのチェックボックスを手動でオフにしてから、もう一度クリックしてすべてを選択しても、効果はありません。
jQuery
$('#all').on('change', function() {
if (!$(this).is(':checked')) {
$('.country').attr('checked', false);
} else {
$('.country').attr('checked', true);
}
});
$('#none').on('change', function() {
if (!$(this).is(':checked')) {
$('.country').attr('checked', true);
} else {
$('.country').attr('checked', false);
}
});
HTML
<div class="subselect">
<input type="radio" class="TLO" name="radio1" id="all" />Check All
<br />
<input type="radio" class="TLO" name="radio1" id="none" />Clear All
<br />
</div>
<br />
<br />
<div class="cselect" id="countries">
<input type="checkbox" class="country" />1
<br />
<input type="checkbox" class="country" />2
<br />
<input type="checkbox" class="country" />3
</div>
jsFiddle http://jsfiddle.net/vsGtF/1/