2
這裏是我的代碼,我有兩個複選框,並希望保持一個被禁止,直到另一個被啓用之前執行的默認操作函數在默認動作之前執行,並且當我在第一個點擊$('#remember').is(':checked')
時返回false(舊值)而不是true。jQuery的。點擊()自定義函數
這裏是我的代碼,我有兩個複選框,並希望保持一個被禁止,直到另一個被啓用之前執行的默認操作函數在默認動作之前執行,並且當我在第一個點擊$('#remember').is(':checked')
時返回false(舊值)而不是true。jQuery的。點擊()自定義函數
您可以使用change
事件,而不是:
$('#remember').live('change', function(event) {
if (this.checked) {
$('#keepIn').removeAttr('disabled');
} else {
$('#keepIn').attr('disabled', 'disabled');
}
});
DEMO:http://jsfiddle.net/jP3NY/
NB:live
方法已經過時了。您最好使用on
或delegate
。
的jQuery的較新版本的解決辦法如下:
$('body').on('change', '#remember', function(event) {
$('#keepIn').prop('disabled', !this.checked);
});
而不是body
你可以使用任何#remember
父元素。
只需2美分佈魯夫請使用'.on'而不是'.live' :) –
謝謝,解決了它,我會盡我所能接受答案。 @Tats_innit在生活vs問題上,我嘗試過,但.on方法不適用於我,請參閱此問題:http://stackoverflow.com/questions/11191966/jquery-triggerclick-not-working-with-jasmine -jquery – mornaner
@Tats_innit我們不知道jQuery的版本是什麼; – VisioN