DataPicker允许无效的日期



我需要允许日期,例如'99/99/9999'当用户不知道确切日期时,我该如何实现?

$('#date').datepicker({
    language: "pt-BR",
    autoclose: true,
    format: 'dd/mm/yyyy',
    todayHighlight: true
})

使用此代码,'99/99/9999'被转换为'07/06/9999'。

这里一个示例:https://jsfiddle.net/bvbtz2re/2/

工作小提琴

您可以将选项设置为 constrainInput false:

$('#date').datepicker({
    language: "pt-BR",
    autoclose: true,
    format: 'dd/mm/yyyy',
    todayHighlight: true,
    constrainInput: false 
})

希望这会有所帮助。

您可以使用forceParse选项将其值设置为false。正如文档所说:

关闭选择器时是否强制输入值解析。也就是说,当用户在输入字段中保留无效的日期时,选择器将强行解析该值,并将输入的值设置为新的有效日期,并符合给定的格式

在这里一个现场示例:

$('input.datum').datepicker({
  format: 'dd.mm.yyyy',
  language: 'de',
  weekStart: 1,
  autoclose: true,
  assumeNearbyYear: true,
  forceParse: false
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet"/>
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/css/bootstrap-datepicker3.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/js/bootstrap-datepicker.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datepicker/1.6.4/locales/bootstrap-datepicker.de.min.js"></script>
<form action="#" method="post">
    <label>Date:</label>
    <input class="datum" type="text" name="vondatum" required>
    <input type="submit" value="save">
</form>

最新更新