jquery选择从前一个到1900年

时间:2013-06-07 11:46:22

标签: jquery date select

这一定很简单,但我被卡住了......

我想让我当前的年份选择表现,以便默认选定年份是从今天起的前一年。因此,如果今天是2013年,您可以选择的最高年份是2012年,最低年份是1900年。

在我的jsfiddle中,我的情况是所选择的最高年份是2013年,但默认值是2012年,我被困住了,我不知道进一步:http://jsfiddle.net/vqJfn/

HTML:

<select class="date-input register_input" name="date_from_statement" id="date_from_statement">
<option value="0">2012</option>
</select>

JS:

 $(function(){
    for (i = new Date().getFullYear(); i > 1900; i--)
    {
    $('#date_from_statement').append($('<option/>').val(i).html(i));
    }
 });

我知道这很简单,但我是初学者所以请不要判断我...帮助

4 个答案:

答案 0 :(得分:1)

$(function () {
    for (i = new Date().getFullYear() -1; i > 1900; i--) {
        $('#date_from_statement').append($('<option/>').val(i).html(i));
    }
});

演示---> http://jsfiddle.net/vqJfn/1/

答案 1 :(得分:1)

我纠正了一个简单的错误here

我已注释掉了选项标签

<select class="date-input register_input" name="date_from_statement" id="date_from_statement">
   <!--<option value="0"></option>-->
</select>

JS代码:修改了你的cond

$(function () {
 for (i = new Date().getFullYear() -1; i > 1900; i--) {
      $('#date_from_statement').append($('<option/>').val(i).html(i));
 }
});

快乐编码:)

答案 2 :(得分:0)

你的意思是

("#date_from_statement").val(new Date().getFullYear()-1); 

答案 3 :(得分:0)

从HTML中删除option并使用以下jQuery:

$(function () {
    var currYear = new Date().getFullYear(),
        option,
        i;
    for (i = 1900; i < currYear; i += 1) {
        option = $(document.createElement('option')).val(i).text(i);
        option.prop('selected', i === currYear - 1);
        $('#date_from_statement').append(option);
    }
});

Demo