J'ai le script datepicker suivant:
<script>
$(function(){
$("#to").datepicker();
$("#from").datepicker().bind("change",function(){
var minValue = $(this).val();
minValue = $.datepicker.parseDate("mm/dd/yy", minValue);
minValue.setDate(minValue.getDate()+1);
$("#to").datepicker( "option", "minDate", minValue );
})
});
</script>
Dateformat est maintenant MM/JJ/AA. Comment changer le format de la date en AAAA-MM-JJ?
Utilisez l'option dateFormat
$(function(){
$("#to").datepicker({ dateFormat: 'yy-mm-dd' });
$("#from").datepicker({ dateFormat: 'yy-mm-dd' }).bind("change",function(){
var minValue = $(this).val();
minValue = $.datepicker.parseDate("yy-mm-dd", minValue);
minValue.setDate(minValue.getDate()+1);
$("#to").datepicker( "option", "minDate", minValue );
})
});
Démo sur http://jsfiddle.net/gaby/WArtA/
Essayez ce qui suit:
$('#to').datepicker({
dateFormat: 'yy-mm-dd'
});
On pourrait penser que ce serait aaaa-mm-jj mais eh bien: P
J'ai eu le même problème et j'ai essayé beaucoup de réponses mais rien n'a fonctionné.
J'ai essayé ce qui suit et cela a fonctionné avec succès:
<input type=text data-date-format='yy-mm-dd' >
$( ".selector" ).datepicker( "option", "dateFormat", 'yy-mm-dd' );
Voir: http://jqueryui.com/demos/datepicker/ et http://docs.jquery.com/UI/Datepicker/formatDate#utility-formatDate
Si dans jQuery l’option dateformat ne fonctionne pas, nous pouvons gérer cette situation en page HTML dans le champ de saisie de votre date:
<input type="text" data-date-format='yyyy-mm-dd' id="selectdateadmin" class="form-control" required>
Et en javascript, sous cette page, ajoutez votre code de sélecteur de date:
$('#selectdateadmin').focusin( function()
{
$("#selectdateadmin").datepicker();
});
J'ai utilisé cette approche pour effectuer la même opération dans mon application.
var varDate = $("#dateStart").val();
var DateinISO = $.datepicker.parseDate('mm/dd/yy', varDate);
var DateNewFormat = $.datepicker.formatDate( "yy-mm-dd", new Date( DateinISO ) );
$("#dateStartNewFormat").val(DateNewFormat);
Vous avez besoin de quelque chose comme ça pendant l'initialisation de votre sélecteur de date:
$("#your_elements_id").datepicker({ dateFormat: 'yyyy-mm-dd' });
cela a également fonctionné pour moi. Allez dans le bootstrap-datepicker.js.
remplacez ce code:
var defaults = $.fn.datepicker.defaults = {
autoclose: false,
beforeShowDay: $.noop,
calendarWeeks: false,
clearBtn: false,
daysOfWeekDisabled: [],
endDate: Infinity,
forceParse: true,
format: 'mm/dd/yyyy',
keyboardNavigation: true,
language: 'en',
minViewMode: 0,
multidate: false,
multidateSeparator: ',',
orientation: "auto",
rtl: false,
startDate: -Infinity,
startView: 0,
todayBtn: false,
todayHighlight: false,
weekStart: 0
};
avec :
var defaults = $.fn.datepicker.defaults = {
autoclose: false,
beforeShowDay: $.noop,
calendarWeeks: false,
clearBtn: false,
daysOfWeekDisabled: [],
endDate: Infinity,
forceParse: true,
format: 'yyyy-mm-dd',
keyboardNavigation: true,
language: 'en',
minViewMode: 0,
multidate: false,
multidateSeparator: ',',
orientation: "auto",
rtl: false,
startDate: -Infinity,
startView: 0,
todayBtn: false,
todayHighlight: false,
weekStart: 0
};
Essaye ça:
$.datepicker.parseDate("yy-mm-dd", minValue);
Utiliser .formatDate( format, date, settings )
ajoutez simplement dateFormat:'yy-mm-dd'
à vos .datepicker({})
réglages, votre .datepicker({})
peut ressembler à ceci
$( "#datepicker" ).datepicker({
showButtonPanel: true,
changeMonth: true,
dateFormat: 'yy-mm-dd'
});
});
</script>
Juste besoin de définir aa-mm-jj ici. dateFormat
La valeur par défaut est mm-jj-aa
Changez mm-jj-aa en aa-mm-jj. Regardez l'exemple ci-dessous
$(function() {
$( "#datepicker" ).datepicker({
dateFormat: 'yy-mm-dd',
changeMonth: true,
changeYear: true
});
} );
Date: <input type="text" id="datepicker">
Ce travail pour moi:
$('#data_compra').daterangepicker({
singleDatePicker: true,
locale: {
format: 'DD/MM/YYYY'
},
calender_style: "picker_4", },
function(start, end, label) {
console.log(start.toISOString(), end.toISOString(), label);
});
C’est ce qui a fonctionné pour moi dans chaque version de datePicker, convertissant d’abord la date en format de date interne datePicker, puis la reconvertissant au format souhaité.
var date = "2017-11-07";
date = $.datepicker.formatDate("dd.mm.yy", $.datepicker.parseDate('yy-mm-dd', date));
// 07.11.2017
this a fonctionné pour moi.
$('#thedate').datepicker({
dateFormat: 'dd-mm-yy',
altField: '#thealtdate',
altFormat: 'yy-mm-dd'
});
Merci pour tout. J'ai eu ma sortie attendue
<link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/base/jquery-ui.css" type="text/css" media="all">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/jquery-ui.min.js"></script>
<script>
$(function(){
$("#to").datepicker({ dateFormat: 'yy-mm-dd' });
$("#from").datepicker({ dateFormat: 'yy-mm-dd' }).bind("change",function(){
var minValue = $(this).val();
minValue = $.datepicker.parseDate("yy-mm-dd", minValue);
minValue.setDate(minValue.getDate()+1);
$("#to").datepicker( "option", "minDate", minValue );
})
});
</script>
<div class="">
<p>From Date: <input type="text" id="from"></p>
<p>To Date: <input type="text" id="to"></p>
</div>
Pour moi au format plugin jquery datetimepicker: l'option 'd/m/Y' est activée
$("#dobDate").datetimepicker({
lang:'en',
timepicker:false,
autoclose: true,
format:'d/m/Y',
onChangeDateTime:function( ct ){
$(".xdsoft_datetimepicker").hide();
}
});