2011-06-30 4 views
0

は考える:入力の変更を使用して、入力のATTRを変更しますか?

HTML

<input checked="checked" class="list_completed_checkbox" id="list_item_completed" name="list_item[completed]" type="checkbox" value="1"> 

のjQuery:

$('.list_completed_checkbox').change(function() { 
    $(this).attr('disabled', 'disabled'); 
}); 

あなたがチェックしたり、チェックボックスのチェックを外し、なぜ、入力に印加されているのattr無効になっていないのですか?

ありがとうございました

+0

作品の罰金を私のために(クローム、IE6-9とFirefox 4で):http://jsfiddle.net/Z9uyD/ –

答えて

1

入力に変更イベントがあるとは限りません。あなたは必要なものに応じてフォーカスやぼかしをしたいかもしれません。

$('.list_completed_checkbox').blur(function() { 
    $(this).attr('disabled', 'disabled'); 
}); 
+0

入力は間違いなく変更イベントを持っている...あなたはhttp://jsfiddle.net/Z9uyD/ –

+0

変更点が起動されていても、attrは適用されていません。 – TheExit

+0

@James - あなたは絶対に正しいです。 –

1

これを試してみてください。

$('.list_completed_checkbox').change(function() { 
     $(this).attr('disabled', true); 
    }); 
+0

@TheExit私はこれがすべてに願っています – thecodeparadox

関連する問題