You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何实现基于当前年份的动态年份范围并添加至下拉选择框

实现动态年份范围的下拉选择框

没问题,我们可以通过获取当前系统年份来动态计算你需要的年份范围(当前年份±5),以下是修改后的完整代码,我会给你拆解关键改动点:

修改后的完整代码

<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="modal-body">
  <div class="form-group">
    <label>Year</label>
    <select id="myselectYear">
      <option value="">-Select-</option>
    </select>
  </div>
  <div class="col-md-4">
    <div class="form-group">
      <label>Month</label>
      <select id="myselectMonth">
        <option value="">-Select-</option>
      </select>
    </div>
  </div>
</div>

<script>
$(document).ready(function() {
  // 获取当前年份
  const currentYear = new Date().getFullYear();
  // 计算起始年份(当前年份-5)和结束年份(当前年份+5)
  const startYear = currentYear - 5;
  const endYear = currentYear + 5;

  // 循环添加年份选项
  for (let year = startYear; year <= endYear; year++) {
    $("#myselectYear").append(new Option(year, year));
  }

  // 额外:如果需要动态生成月份选项,可以加这段
  for (let month = 1; month <= 12; month++) {
    // 给月份补前导零,比如1变成"01"
    const monthText = month.toString().padStart(2, '0');
    $("#myselectMonth").append(new Option(monthText, month));
  }
});
</script>

关键改动说明

  • 获取当前年份:使用new Date().getFullYear()获取系统当前的4位年份,这是实现动态范围的核心。
  • 计算年份范围:根据需求,起始年份是当前年份-5,结束年份是当前年份+5,这样不管哪一年打开页面,范围都会自动调整。
  • 循环逻辑优化:原来的循环是固定次数,现在改成从起始年份循环到结束年份,逻辑更直观,也避免了固定次数可能带来的错误。
  • 额外优化(可选):我顺便加了动态生成月份选项的代码,补了前导零让显示更规范,如果你不需要可以直接删掉这段。

内容的提问来源于stack exchange,提问作者Joey Jaison

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.08 08:53:10