此代码可以正常工作:
$("#day option").click(function () {
daySelected = $("#day select").val();
});
但是在这个功能之后:
$("#month option").click(function () {
$("#day select").html("<option value='default'>Day</option>");
for (var i = 1; i <= daysNum; i++) {
$("#day select").append("<option value='" + i + "'>" + i + "</option>");
}
if (parseInt(daySelected) > daysNum) {
$("#day select").val(String(daysNum));
} else {
$("#day select").val(daySelected);
}
});
当我点击daySelected
时,我的$("#day option")
变量将不再更改其值。
答案 0 :(得分:1)
我认为因为jQuery click
函数用于已存在的元素
因此,当您清除并重新创建option
元素时,click event
不会附加到该元素
我想你可以像这样使用on
函数。
$("#day").on('click', 'option', function () {
daySelected = $("#day select").val();
});
希望得到这个帮助。