hasan.alkhatib
hasan.alkhatib

Reputation: 1559

How to get the changed date from bootstrap-datepicker

I am using Eternicode's fork of the bootstrap-datepicker library and until now all is going well for generating it, but I want to get the date in order to use it in my logic after changing the date.

$('#calendar').on('changeDate', function(event, date) {
  // how to pop alert message to print the date I've chosen ?
});

How can I do this?

Upvotes: 4

Views: 20484

Answers (4)

krishna kachhela
krishna kachhela

Reputation: 1

Put this code in the jquery function body:

$(document).ready(function () {
  $('#datepicker').on('dp.change', function(){
    var t=Date.parse($("#dob1").val());    
    if (t > Date.now()) {
      alert('Selected date shold not be a future date');
      $("#dob1").val('');
    }
  });
});

Upvotes: 0

mxmxwo
mxmxwo

Reputation: 31

There are two things you could try.

Try implementing this line:

$('#startdate').val()

Or this one:

$('#startdate').data('date')

Drew T. suggests using .val() - also very efficient.

$('#calendar').on('changeDate', function(event, date) {
    var date = $('#calendar').val();
    alert(date);
});

Hope this helps!

Upvotes: -1

faiz
faiz

Reputation: 123

actually the fundamental is like this:
you will get access to the date by the .on event that parsed to the e parameter. from e you can't access to .getDate

$('#calendar').on('changeDate', function(e) {
    alert(e.getDate()+'/'+e.getMonth()+e.getFullYear());
});

if you can't understand how this happened, you can put the response in console.log(e) rather than alert(e.getDate) so you can get a clear view on what to access.

Upvotes: -1

Mark Amery
Mark Amery

Reputation: 154555

As described in the docs, the Eternicode version of bootstrap-datepicker adds three attributes to the changeDate event that can be used for accessing the newly selected date. You'll be interested in either the .date property (which points to the actual date object representing the selected date) or the .format method, which you can use to get the date as a string.

Assuming the simplest case (where you have a single picker and you want to get the date as a string in the same format that you initialised the datepicker with), you'll just want to call .format() with no arguments:

$('#calendar').on('changeDate', function(event) {
    alert(event.format());
});

Here's a JSFiddle showing this in action: http://jsfiddle.net/bhm7p/3/

Upvotes: 17

Related Questions