创建包含给定月份中的#天数的javascript对象

时间:2014-06-12 22:36:12

标签: javascript html typescript

我有以下代码,它返回一个月内的天数:

daysInMonth(month:number, year:number) {
            return new Date(year, month, 0).getDate();
}

我们说这给了我31。现在,在我的html中,我想创建一个dropdown元素,其中包含该月中的所有日期,按顺序列出。所以,我的下拉列表包括:

1,2,3,4,5,6,7,8,9,10,11.....一直到31

我需要动态构建此对象,因为月中的日期将根据月份而变化。

最有效的方法是什么?

2 个答案:

答案 0 :(得分:1)

我会使用jQuery。

所以,你可以做某事:

var dropDown = $('<select/>').appendTo('body');    


for (var i = 1; i <= daysOfMonth; i++) {
    dropDown.append('<option value=' + i + '>' + i + '</option>');
}

您显然需要从之前的某个地方获取daysOfMonth的值。

答案 1 :(得分:0)

您可以使用以下内容来实现下拉菜单:

(function() {
    var totalDays = daysInMonth(2, 2014),
        selectEl = document.createElement('select');

    for (var i = 1; i <= totalDays; i++) {
        var option = document.createElement('option');
        option.appendChild(document.createTextNode(i));
        option.setAttribute('value', i);
        selectEl.appendChild(option);
    }

    document.body.appendChild(selectEl);
}());

DEMO