用户点击后立即从datepicker保存日期

时间:2016-03-24 16:44:25

标签: jquery datepicker

我试图在datepicker小部件(内联版本)上的用户选择上立即捕获用户日期。你能指出我正确的方向吗?

HTML
<div id="datepicker" class="input-group date" data-date-format="mm-dd-yyyy">

JS
$("#datepicker").datepicker({ 
    autoclose: true,
    onSelect: function(){
      var selected = $(this).val();
      // log to check if date is being saved, which its not
      console.log(selected);
    }      
}).datepicker('update', new Date());

这里还有一个指向codepen的链接: http://codepen.io/cmicpace/pen/xVdMWE?editors=1011

由于

2 个答案:

答案 0 :(得分:0)

onSelect是一个jQueryUI函数,同时你在示例中使用了bootstrap datepicker。

http://api.jqueryui.com/datepicker/#option-onSelect

使用$("#datepicker").datepikcer().on("changeDate", function(e))

https://bootstrap-datepicker.readthedocs.org/en/latest/events.html#changedate

答案 1 :(得分:0)

您使用的是boostrap还是Jquery datePicker? update()方法对于Jquery datePicker不是有效方法。所以,我相信你使用Bootstrap datepicker。 在用户选择更改日期后不久,Bootstrap datepicker会触发'changeDate'事件。以下是您根据'changeDate'事件选择日期的示例。

$(function() {
  $("#datepicker").datepicker({         
        autoclose: true,               
  }).datepicker('update', new Date(2016, 2, 5)).on('changeDate', dateChanged);              
});

function dateChanged(ev) {       
      console.log(ev.date);
}

更新方法仅包含以下参数。所以,新的Date()不是有效的参数。

$('.datepicker').datepicker('update');
$('.datepicker').datepicker('update', '2011-03-05');
$('.datepicker').datepicker('update', new Date(2011, 2, 5));