当前位置: 首页 > 知识库问答 >
问题:

使用Javascript在引导数据选择器中控制年、月和日期的范围

狄河
2023-03-14

我正在开发一个应用程序,其中我使用自举数据选择器来显示日期。在我已经验证的日期上,我只显示当前年份的18年日期(这意味着从现在开始的18年以下的任何年份都不显示)。例如,因为我们是在2019年(它显示到2001年以下的年份:2001, 2000, 1999 , 1998 )。这很好。

问题是我想展示的年份,下限应该是18年,上限应该是85年。例如,由于我们在2019年,它应该显示1916年和2001年之间的年份,其中的差异是85年(相同的情况应该持续数月和数天)。

加成

// Javasript to control how the datepicker appears

//dob (Must be over 18 years and less than 85 years)
  var maxBirthdayDate = new Date();
  maxBirthdayDate.setFullYear( maxBirthdayDate.getFullYear() - 18 );
  maxBirthdayDate.setMonth(11,31)
  $( function() {
    $( "#dob " ).datepicker({
      changeMonth: true,
      changeYear: true,
      dateFormat: 'yy-mm-dd',
      maxDate: maxBirthdayDate,
      yearRange: '1900:'+maxBirthdayDate.getFullYear(),
     });
   });
        //End dob
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.8.0/js/bootstrap-datepicker.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.8.0/css/bootstrap-datepicker.min.css" rel="stylesheet"/>

<-- Markup -->
 <div class="form-line">
   <input type="text" placeholder="Date of Birth *" class="form-input dateTextBox" name="dob" id="dob" value="#" required>
 </div>

共有1个答案

凤经武
2023-03-14

试试这个。。。。使用startDateendDate

  var maxBirthdayDate = new Date();
  maxBirthdayDate.setFullYear( maxBirthdayDate.getFullYear() - 18 );
  maxBirthdayDate.setMonth(11,31);
  var mindate = new Date();
  mindate.setFullYear( maxBirthdayDate.getFullYear() - 85 );
  mindate.setMonth(11,31);
  $( function() {
    $( "#dob " ).datepicker({
      changeMonth: true,
      changeYear: true,
      dateFormat: 'yy-mm-dd',
      //yearRange: '1900:'+maxBirthdayDate.getFullYear(),
      startDate: mindate,
      endDate: maxBirthdayDate
     });
   });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.8.0/js/bootstrap-datepicker.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.8.0/css/bootstrap-datepicker.min.css" rel="stylesheet"/>

<-- Markup -->
 <div class="form-line">
   <input type="text" placeholder="Date of Birth *" class="form-input dateTextBox" name="dob" id="dob" value="#" required>
 </div>
 类似资料:
  • 我使用的是bootstrap datepicker,我的代码如下所示,是JSFIDLE上的代码演示 上面的代码运行良好,但我试图做的是允许用户只选择月份和年份。 你能告诉我怎么做吗?

  • 我想有一个日期选择器,用户可以从日期选择器中只选择月份和年份,我还需要限制从以前的日期选择器中选择月份和年份的下一个日期选择器... 有人能帮我解脱吗?

  • 我正在使用Dan Grossman的Twitter引导程序的日期范围选择器。

  • 我正在尝试实现这里介绍的日期时间选择器https://eonasdan.github.io/bootstrap-datetimepicker/#minimum-安装程序,我已将文件文件下载到目录和。但当点击图标时,日历不会弹出。

  • 我正在寻找一种方法来定制Android中的日期选择器,使其只显示日和月(即没有年)。 有什么想法吗?

  • 我正在使用来自http://www.eyecon.ro/bootstrap-datepicker/ 但是Firebug显示日期在以下行的bootstrap-datepicker.js文件中未定义。 javascript文件和css工作正常 并使用