首页 文章

如何强制引导日期选择器显示日历中输入字段的值?

提问于
浏览
1

我对bootstrap datepicker有一个奇怪的问题(我在bootstrap模态中使用它) .

如果我直接在输入字段中设置值...

<input value="12.05.2017" type="text" class="date">

...日期选择器运行良好 . 这意味着,如果我单击输入字段,则datepicker会在日历中显示正确的日期:

enter image description here

但是如果我通过jquery设置值..

<input value="" type="text" class="date">

<script>
$(document).on("click", ".open_modal", function () {
  $(".date").val("11.06.2017");
}
</script>

...然后,如果我点击输入字段,日历将打开,但不显示任何日期:

enter image description here

什么可能导致这个问题?

小提琴:http://jsfiddle.net/93eTU/2510/

2 回答

  • 1

    你应该使用datepicker methods之一:

    $('.open_modal').click(function() {
        $('.date').datepicker('update', new Date(2017, 6, 11));
    });
    

    更新后果

  • 1

    试试这个:

    $('.open_modal').click(function() {
    $('.date').datepicker('update', '11.06.2017');
    });
    

    Datepicker从输入中获取初始值(如果有),并使用它进行初始化 . 但是在输入上初始化datepicker之后,应该使用datepicker api来更改值 .

    还有一件事 . 您的日期格式与您提供的值不符:

    $('.date').datepicker({
         dateFormat: '**dd-mm-yy**',
         minDate: '+5d',
         changeMonth: true,
         changeYear: true,
         altField: "#idTourDateDetailsHidden",
         altFormat: "yy-mm-dd"
     });
    

相关问题