更新选项后无法获取选项值

时间:2017-11-16 03:57:07

标签: jquery html

此代码可以正常工作:

$("#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")变量将不再更改其值。

1 个答案:

答案 0 :(得分:1)

我认为因为jQuery click函数用于已存在的元素 因此,当您清除并重新创建option元素时,click event不会附加到该元素 我想你可以像这样使用on函数。

$("#day").on('click', 'option', function () {
    daySelected = $("#day select").val();
});

希望得到这个帮助。