2

クラスが「子」に設定された5つのチェックボックスのセットがあります。1つのチェックボックスを選択すると、残りのチェックボックスが無効になるようにします。次のコードを試しましたが、すべてのチェックボックスが無効になっています。

if ( !$(this).is ( ":checked" ) ) {
  $(this).removeClass().addClass("hand .parent");
  $(".child").attr ( "disabled" , true );
}

それから私もこれを追加してみました

  $(this).removeAttr ( "disabled" );

ただし、それでもすべてのコントロールが無効になります

plzを助けて!ありがとう

4

2 に答える 2

1

あなたはこのようなことをしようとしていますか?

ここでそれを参照してください:http: //jsfiddle.net/fEA3Y/

var $cbox = $('.child').change(function() {
    if(this.checked) {
        $cbox.not(this).attr('disabled','disabled');
    } else {
        $cbox.removeAttr('disabled');
    }
});​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​

何らかの理由で本当にクラスを切り替える必要がある場合は、次のようにすることができます。

http://jsfiddle.net/fEA3Y/2/

var $cbox = $('.child').change(function() {
    if(this.checked) {
        $(this).toggleClass('child parent');
        $cbox.not(this).attr('disabled','disabled');
    } else {
        $(this).toggleClass('child parent');
        $cbox.removeAttr('disabled');
    }
});​
于 2010-08-28T00:51:32.783 に答える
0

しましたか

$('.child').removeAttr('disabled')

で試してみたので、完全なコードを投稿していないので.child、コンテキストを伝えるのはちょっと難しいです。this

また、readonlyどこかに属性が設定されていませんか?

于 2010-08-28T00:48:20.600 に答える