1

私のアプリケーションでは、ユーザーはチェックボックスをオンまたはオフにすることができます。変更イベントについて:

    $('#Inactive_cb').change(function () {

    ....
    this.checked = !this.checked;

値が変わったかどうかを確認します。change()では、変更を行う権限があるかどうかも確認します。元に戻すのが気に入らない場合は、チェック/チェックを外してください。

質問:

私がそれを持っている方法は理想を超えていますか?私は持っています:

     this.checked = !this.checked;
4

2 に答える 2

1

使用できます

if($(this).is(':checked')){
    $(this).attr('checked', false);
}

または、新しいバージョンのjQueryを使用している場合は、

if($(this).is(':checked')){
    $(this).prop('checked', false);
}
于 2012-07-12T22:12:09.210 に答える
0

あなたはそれをそのように行うことができます、それは簡単でそれは機能します...しかし私はユーザーがそれをチェックする権限を持っていないならチェックボックスを無効にすることを提案します。

<input type="checkbox" id="foo" disabled />

無効な属性を設定するjQueryコード

$("#foo").attr('disabled', 'disabled');

フォームが読み込まれるときにこれを行うので、権限を持たないユーザーはフォームをチェックすることさえできません。明らかに、サーバー側でこのチェックを再度実行して、DOMの要素から属性を削除し、想定外のときにチェックした人がいないことを確認する必要があります。

追加することもできます...JSを使用して属性を削除する必要がある場合は、jQueryを使用してください.removeAttr()

于 2012-07-12T22:10:04.467 に答える