20

まず、フィドル

$('#enableButtonB').click(function (e) {
   if($(e.target).is(':checked'))
   {
       $('#myButtonB').removeProp('disabled');
       alert('Enable Button B');
   }
   else
   {
       $('#myButtonB').prop('disabled', true); 
       alert('Disable Button B');
   }
});

.prop()jQueryとremoveProp()メソッドを使用して、いくつかの基準に基づいてボタンを有効または無効にしようとしています。removeProp()要素で呼び出されるまではうまくいくようです。その後、prop()ボタンの無効化に失敗する後続の呼び出し。

要素を繰り返し有効化および無効化する適切な方法は何ですか?

4

4 に答える 4

26

それ以外の

.removeProp('disabled')

使用する

.prop('disabled',false)

フィドル: http://jsfiddle.net/kqnZz/6/

于 2012-06-06T18:19:45.877 に答える
17

まず、http://jsfiddle.net/iambriansreed/KxGVa/

jQuery ドキュメントは素晴らしいです。removeProp言います:

注:このメソッドを使用して、checked、disabled、または selected などのネイティブ プロパティを削除しないでください。これにより、プロパティが完全に削除されます。一度削除すると、要素に再度追加することはできません。.prop()代わりにこれらのプロパティを設定するために使用しfalseます。

変化する:

.removeProp('disabled')

...に...

.prop('disabled', false)

...と...

.prop('disabled', 'disabled')

...に...

.prop('disabled', true)
于 2012-06-06T18:30:13.023 に答える
2

この行は、トグル無効機能として機能します。

$('#myButtonB').prop('disabled', !$('#myButtonB').prop('disabled'));

jquery 関数内で使用する場合は、次のように使用できます。

$('#enableButtonB').on('click', function() {
     $('#myButtonB').prop('disabled', !$('#myButtonB').prop('disabled'));
});
于 2015-05-18T14:52:32.150 に答える