Reputation: 11
This is my jQuery function but I'm not able to pass the current date and paste it into my textbox, it only able to select the date when doing onClick.
What is need is I would like to select the current date and paste it into my textbox.
gebo_datepicker = {
init: function() {
$('#dp1').datepicker();
$('#dp2').datepicker();
$('#dp_start').datepicker({format: "mm/dd/yyyy"}).on('changeDate', function(ev){
var dateText = $(this).data('date');
var endDateTextBox = $('#dp_end input');
if (endDateTextBox.val() != '') {
var testStartDate = new Date(dateText);
var testEndDate = new Date(endDateTextBox.val());
if (testStartDate > testEndDate) {
endDateTextBox.val(dateText);
}
}
else {
endDateTextBox.val(dateText);
};
$('#dp_end').datepicker('setStartDate', dateText);
$('#dp_start').datepicker('hide');
});
$('#dp_end').datepicker({format: "mm/dd/yyyy"}).on('changeDate', function(ev){
var dateText = $(this).data('date');
var startDateTextBox = $('#dp_start input');
if (startDateTextBox.val() != '') {
var testStartDate = new Date(startDateTextBox.val());
var testEndDate = new Date(dateText);
if (testStartDate > testEndDate) {
startDateTextBox.val(dateText);
}
}
else {
startDateTextBox.val(dateText);
};
$('#dp_start').datepicker('setEndDate', dateText);
$('#dp_end').datepicker('hide');
});
$('#dp_modal').datepicker();
}
};
And this is my textbox
<div class="input-append date" id="dp_start">
<input class="span9" type="text" readonly="readonly" placeholder="Date Start" /><span class="add-on"><i class="splashy-calendar_day_up"></i></span>
</div>
Upvotes: 0
Views: 11803
Reputation: 15387
For example
HTML
<input type="text" id="stDate"/>
JS
$(function(){
$("#stDate").datepicker({ dateFormat: 'mm/dd/yy',
changeMonth: true,
changeYear: true,
yearRange: '-70:+10',
constrainInput: false,
duration: '',
gotoCurrent: true}).datepicker('setDate',"0");
});
Upvotes: 0
Reputation: 388316
Try
$('#dp_start').val($.datepicker.formatDate( "mm/dd/yy", new Date()))
Your date format "mm/dd/yyyy"
is not correct, it should be "mm/dd/yy"
Ex:
gebo_datepicker = {
init: function() {
$('#dp1').datepicker();
$('#dp2').datepicker();
//set the current date for dp_start
$('#dp_start').val($.datepicker.formatDate( "mm/dd/yy", new Date()))
$('#dp_start').datepicker({format: "mm/dd/yyyy"}).on('changeDate', function(ev){
var dateText = $(this).data('date');
var endDateTextBox = $('#dp_end input');
if (endDateTextBox.val() != '') {
var testStartDate = new Date(dateText);
var testEndDate = new Date(endDateTextBox.val());
if (testStartDate > testEndDate) {
endDateTextBox.val(dateText);
}
}
else {
endDateTextBox.val(dateText);
};
$('#dp_end').datepicker('setStartDate', dateText);
$('#dp_start').datepicker('hide');
});
$('#dp_end').datepicker({format: "mm/dd/yyyy"}).on('changeDate', function(ev){
var dateText = $(this).data('date');
var startDateTextBox = $('#dp_start input');
if (startDateTextBox.val() != '') {
var testStartDate = new Date(startDateTextBox.val());
var testEndDate = new Date(dateText);
if (testStartDate > testEndDate) {
startDateTextBox.val(dateText);
}
}
else {
startDateTextBox.val(dateText);
};
$('#dp_start').datepicker('setEndDate', dateText);
$('#dp_end').datepicker('hide');
});
$('#dp_modal').datepicker();
}
};
Upvotes: 1
Reputation: 10555
You can get the current date by
var d = new Date();
var month = d.getMonth()+1;
var day = d.getDate();
var output = d.getFullYear() + '/' +
(month<10 ? '0' : '') + month + '/' +
(day<10 ? '0' : '') + day;
Then you can assign this value on textbox
Upvotes: 1