我有一組選擇(birth_year,birth_month和birth_day)。我編寫了這個代碼,填充一個正確的一個月的天數的下拉列表,禁用月份,日下拉如果沒有選擇年份等等。我的問題是,我有另一組下拉列表(entry_year,entry_month ,entry_day)的形式,我想用這個功能,我不知道我該怎麼做。在JQuery的不同元素上使用相同的函數
如何修改此功能以使用另一組選擇框?
$(document).ready(function() {
$('.sl_birth_year').change(function() {
var birth_year = $('#sl_birth_year').val();
if (birth_year != 0)
$('#sl_birth_month').attr('disabled', false);
else {
$('#sl_birth_month').attr('disabled', true);
$('#sl_birth_day').attr('disabled', true);
}
$('#sl_birth_month').val(0);
$('#sl_birth_day').val(0);
}),
$('#sl_birth_month').change(function() {
var birth_year = $('#sl_birth_year').val();
var birth_month = $('#sl_birth_month').val();
if (birth_month != 0) {
$('#sl_birth_day').attr('disabled', false);
var post_url = "/index.php/admin/get_days/" + birth_year + "/" + birth_month;
$.ajax ({
type: "POST",
url: post_url,
success: function(num_of_days) {
$('#sl_birth_day').empty();
$('#sl_birth_day').append('<option value="0"> </option>');
for (var i = 0; i < num_of_days; i++) {
var string = '<option value="' + (i + 1) + '">' + (i + 1) + "</option>";
$('#sl_birth_day').append('<option value="' + (i + 1) + '">' + (i + 1) + "</option>");
}
}
});
}
else {
$('#sl_birth_day').val(0);
$('#sl_birth_day').attr('disabled', true);
}
});
});
正確的表格將有助於閱讀碼。同時 - 您可以將其創建爲一個命名函數,該函數接收對象ID(年,月,日)的參數。然後在出生ID和入口ID上調用這個函數。 – Mikhail 2012-02-10 17:06:02