次のコードを使用しました。
デモは動作しているように見えますが、実際にはチェックボックスのステータスを変更していないようです。むしろ、チェックされているかチェックされていないように見えるだけです。
HTMLは次のとおりです。
<fieldset class="checkboxes">
<label for="checkbox-01" class="label_check c_on"><input type="checkbox" checked="" value="1" id="checkbox-01" name="sample-checkbox-01"> I agree to the terms & conditions.</label>
<label for="checkbox-02" class="label_check"><input type="checkbox" value="1" id="checkbox-02" name="sample-checkbox-02"> Please send me regular updates.</label>
</fieldset>
使用する JavaScript は次のとおりです。
<script type="text/javascript">
function setupLabel() {
if ($('.label_check input').length) {
$('.label_check').each(function () {
$(this).removeClass('c_on');
});
$('.label_check input:checked').each(function () {
$(this).parent('label').addClass('c_on');
});
};
};
var linkObj;
$(document).ready(function () {
$('.label_check, .label_radio').click(function () {
setupLabel();
});
setupLabel();
コードに問題があるかどうかを確認してください。作成者は、チェックボックスのチェック状態をコードで変更するのを見逃しているようです。
チェックボックスのステータスを確認するために使用するコードは次のとおりです。
var action = $('#htmlEdit').is(":checked") ? "Editing HTML" : "Editing";
チェックを間違っているのでしょうか、それとも作成者のコードが入力要素を変更していないだけなのでしょうか?