如何在Angular JS中获取月份的下拉列表并将默认值设置为当前月份(也在年份中)?

时间:2019-04-18 05:35:55

标签: html angularjs datetime drop-down-menu

我有两个下拉菜单的月份和年份。从2105-2025年开始,下拉菜单有10个选项。在打开html页面时,如何设置当前年份和当前日期的默认值?

例如,今天是2019年5月。因此,今天我可以输入vm.Search.Month = 3;vm.Search.Year=2019;的值,但是我必须更改vm.Search.Month和{{1}的值}每个月和每年。如何设置默认值,这样我就不必更改其值了?

//这是日期的角度下拉列表

vm.Search.Year

//类似地,这是有角JS年份的下降

vm.monthList = [
    { Value: 1, Text: 'Jan' },
    { Value: 2, Text: 'Feb' },
    { Value: 3, Text: 'Mar' },
    { Value: 4, Text: 'Apr' },
    { Value: 5, Text: 'May' },
    { Value: 6, Text: 'June' },
    { Value: 7, Text: 'July' },
    { Value: 8, Text: 'Aug' },
    { Value: 9, Text: 'Sep' },
    { Value: 10, Text: 'Oct' },
    { Value: 11, Text: 'Nov' },
    { Value: 12, Text: 'Dec' }
];

//我的HTML来自年份和月份

vm.yearList = [
    { Value: 2015, Text: '2015' },
    { Value: 2016, Text: '2016' },
    { Value: 2017, Text: '2017' },
    { Value: 2018, Text: '2018' },
    { Value: 2019, Text: '2019' },
    { Value: 2020, Text: '2020' },
    { Value: 2021, Text: '2021' },
    { Value: 2022, Text: '2022' },
    { Value: 2023, Text: '2023' },
    { Value: 2024, Text: '2024' },
    { Value: 2025, Text: '2025' }
];

// html表示月份下拉

<div class="col-sm-4">
    <div class="clearfix">
        <md-input-container class="block">
            <div class="col-xs-5 pad-0">
                <label class="md-no-float md-container-ignore ">
                  Year
                </label>
            </div>
            <div class="col-xs-7 pad-col-7">
                <div class="form-group" id="helpblockforrequired">
                    <md-select class="md-no-asterisk"
                               ng-model="vm.Search.Year" name="Year"
                               ng-change="onContractTypeChange()"
                               id="Year" required>
                        <md-option ng-value="dateYear.Value"
                                   ng-repeat="dateYear in vm.yearList">
                          {{dateYear.Text}}
                        </md-option>
                    </md-select>
                </div>
            </div>
        </md-input-container>
    </div>
</div>

1 个答案:

答案 0 :(得分:2)

您可以:

vm.Search.Year = new Date().getFullYear();
vm.Search.Month = new Date().getMonth() + 1;

注意getMonth()是一种返回当前月份但一月= 0的方法。