我查看了一些在這裏的答案,沒有人真的幫助過我。我注意到我的jQuery有一個奇怪的問題。我意識到代碼有點快,但是一旦我正常工作,我會整理它。Jquery複選框更改
jQuery('input#use_points').change(function() {
if(jQuery(this).not(':checked')) {
alert('not checked');
jQuery("#amount").val(0);
jQuery("#pounds").val(0);
jQuery(".ui-slider-handle").css({'left': '0'});
jQuery(".points-text").hide();
jQuery(".use-points-labels").hide();
jQuery("#slider-range-max").hide();
jQuery('#updatecart').click();
}
if(jQuery(this).is(':checked')) {
alert('is checked');
jQuery("#amount").val(1);
jQuery("#pounds").val(0.05);
jQuery(".points-text").show();
jQuery(".use-points-labels").show();
jQuery("#slider-range-max").show();
jQuery('#updatecart').click();
}
});
你會注意到,我有兩個警報'未檢查'和'被檢查'第一個if語句按預期工作。但是,如果它沒有被檢查,然後我點擊複選框,它會通過這兩個語句。給我警報'沒有檢查',然後直接跟着'檢查'
但是,我不明白爲什麼會發生這種情況,因爲它只是調用而不是複選框的點擊操作。有人有想法嗎 ?
在此先感謝。
///////////////////////////////編輯////////////// ////////////////////////////// 我現在已經回答了我自己的問題。由於某種原因寫這種方式的作品:
jQuery('input#use_points').change(function() {
if(this.checked) {
alert('is checked');
jQuery("#amount").val(1);
jQuery("#pounds").val(0.05);
jQuery(".points-text").show();
jQuery(".use-points-labels").show();
jQuery("#slider-range-max").show();
jQuery('#updatecart').click();
} else {
alert('not checked');
jQuery("#amount").val(0);
jQuery("#pounds").val(0);
jQuery(".ui-slider-handle").css({'left': '0'});
jQuery(".points-text").hide();
jQuery(".use-points-labels").hide();
jQuery("#slider-range-max").hide();
jQuery('#updatecart').click();
}
任何人都可以解釋爲什麼嗎?
我交換的方式我首先是因爲在其他使用它的方式是既沒有工作,但如果你看到我的編輯這樣做的工作。不知道爲什麼 – 2013-03-11 15:32:23