【问题标题】:HTML5 input type show only yearsHTML5 输入类型仅显示年份
【发布时间】:2019-03-03 01:11:06
【问题描述】:

也许这个问题已经问过了,但这并不能解决我的问题。

这是我在输入框中的查询,我只想显示这样的年份

提前致谢

注意:这个问题已经问过了,但它不能解决我的问题

【问题讨论】:

  • 试试select and show year only。指导是here
  • 我是否应该将我的答案写到答案表中,然后您将其标记为正确答案?
  • @NgocNam:是的,当然
  • 谢谢,我添加了答案:D

标签: html date year2038


【解决方案1】:

如何仅解析输入年份<input date="year">

你可以使用这个sn-p。

PHP 版本:

  <select class="form-control" name="startyear">
   <?php
   for ($year = (int)date('Y'); 1900 <= $year; $year--): ?>
     <option value="<?=$year;?>"><?=$year;?></option>
   <?php endfor; ?>
  </select>

JavaScript 版本:

    <select name="yearpicker" id="yearpicker"></select>

    <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    <script type="text/javascript">
    let startYear = 1800;
    let endYear = new Date().getFullYear();
    for (i = endYear; i > startYear; i--)
    {
      $('#yearpicker').append($('<option />').val(i).html(i));
    }
    </script>

【讨论】:

  • PHP 版本运行良好,但不知何故 js 版本没有输出任何东西。
  • @ailia 你必须包含jquery 才能使其工作
【解决方案2】:

为了提高效率,我想对 Rhalp 的回答做一个小的修正。不要初始化对象 219 次。一般来说,如果您在循环之前获取成员,则在浏览器引擎上的工作要少得多。

    <select name="yearpicker" id="yearpicker"></select>

    <script type="text/javascript"
            src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.min.js"> 
    </script>
    <script type="text/javascript">
    let startYear = 1800;
    let endYear = new Date().getFullYear();
    for (i = endYear; i > startYear; i--)
    {
      $('#yearpicker').append($('<option />').val(i).html(i));
    }
    </script>

【讨论】:

    【解决方案3】:

    【讨论】:

      猜你喜欢
      • 2014-11-21
      • 2012-10-19
      • 1970-01-01
      • 2021-08-12
      • 1970-01-01
      • 1970-01-01
      • 2012-04-17
      • 2015-08-17
      • 1970-01-01
      相关资源
      最近更新 更多