Bootstrap 3 DatePicker - 如何在不重置选择器配置的情况下重置所选日期?

und*_*oid 6 jquery datepicker twitter-bootstrap

我试图在按钮点击时重置所选日期,但到目前为止我只能清除input元素,而不是选择器上的实际日期.以下代码重置了所有内容,包括配置和日期,因此它显然不是我需要的.

$('#datepicker').datepicker('update',''); //resets everything
Run Code Online (Sandbox Code Playgroud)

详细说明:用户只能选择当天7天后的日期.还有一个按钮,用户可以从选择器中清除所选日期,并选择一个新日期.现在,清除功能只能清除拾取器中的输入元素(但不能清除拾取器元素中的实际日期),或清除选择器配置中的选择(例如startDate:"+ 7d".我想仅清除所选日期,而不重置所有内容.

的jsfiddle

这是我到目前为止提出的:
HTML:

<div id="myDatepicker" class="input-group date">
   <input type="text" class="form-control" id="datepick">
   <span class="input-group-addon">
   <i class="fa fa-calendar"></i>
   </span>
   <a href="#" id="duration_tag"></a>
</div>
<button type="button" id="clear">clear</button>
Run Code Online (Sandbox Code Playgroud)

jQuery的:

$(document).ready(function() {

$("#clear").click(function(){
    $('#datepick').val(" ").datepicker({startDate: "+7d"});                  
});

$('#myDatepicker').datepicker({
                    startDate: "+7d",
                });

$('#myDatepicker').on('changeDate', function(e){
     $(this).datepicker('hide');
});

});
Run Code Online (Sandbox Code Playgroud)

yoa*_*sky 16

您需要获取当前datePicker实例并对其进行调用setDate(null).你可以这样做:

$("#clear").click(function(){
  $('#myDatepicker').data('datepicker').setDate(null);
});
Run Code Online (Sandbox Code Playgroud)

更新小提琴:http://jsfiddle.net/4L6fhjLf/2/


小智 6

$('#myDatepicker').data('DateTimePicker').date(null);
Run Code Online (Sandbox Code Playgroud)