0

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

我想让我的当前年份选择行为,以便默认选择的年份是从今天开始的上一年。因此,如果今天是 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

4 回答 4

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/

于 2013-06-07T11:48:23.850 回答
1

There was a simple mistake i have corrected it here

I have commented out the option tag

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

JS Code: Modifed your for cond as well

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

Happy Coding :)

于 2013-06-07T11:51:51.433 回答
0

你的意思是

("#date_from_statement").val(new Date().getFullYear()-1); 
于 2013-06-07T11:52:51.073 回答
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);
    }
});

演示

于 2013-06-07T11:54:46.387 回答