2011-09-21 11 views
34

ho foll0wing datepicker sceneggiaturaCome cambiare il formato della data (MM/DD/YY) a (AAAA-MM-DD) in selezione data

<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> 

Ora dateformat è MM/DD/YY .come al cambiamento il formato della data di aAAA-mM-gG

+1

Vuoi cambiare il formato parsedate o dateformat effettivamente visualizzata? – tskulbru

risposta

48

Utilizzare l'opzione 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); 
     }) 
    }); 

Demo a http://jsfiddle.net/gaby/WArtA/

28

Prova il seguente:

$('#to').datepicker({ 
     dateFormat: 'yy-mm-dd' 
}); 

si potrebbe pensare che sarebbe aaaa-mm-gg ma vabbè: P

+0

Inoltre, fai attenzione a scrivere 'mm' in maiuscoletto, poiché' MM' visualizzerà il mese in lettere. – TheWanderingMind

1

Prova questa:

$.datepicker.parseDate("yy-mm-dd", minValue); 
1

Hai bisogno di qualcosa di simile durante l'inizializzazione del vostro datepicker:

$("#your_elements_id").datepicker({ dateFormat: 'yyyy-mm-dd' }); 
0

Grazie per tutti. Ho ottenuto la mia uscita prevista

<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> 
14

Ho avuto lo stesso problema e ho provato molte risposte ma non ha funzionato.

Ho provato quanto segue e ha funzionato con successo:

<input type=text data-date-format='yy-mm-dd' > 
+2

Grazie, solo questo ha funzionato per me. –

+0

@RonnieSuoi essere il benvenuto – Shiko

0

this ha lavorato per me.

$('#thedate').datepicker({ 
    dateFormat: 'dd-mm-yy', 
    altField: '#thealtdate', 
    altFormat: 'yy-mm-dd' 
}); 
2

anche questo ha lavorato per me. Vai a bootstrap-datepicker.js.

sostituire questo codice:

var defaults = $.fn.datepicker.defaults = { 
 
\t \t autoclose: false, 
 
\t \t beforeShowDay: $.noop, 
 
\t \t calendarWeeks: false, 
 
\t \t clearBtn: false, 
 
\t \t daysOfWeekDisabled: [], 
 
\t \t endDate: Infinity, 
 
\t \t forceParse: true, 
 
\t \t format: 'mm/dd/yyyy', 
 
\t \t keyboardNavigation: true, 
 
\t \t language: 'en', 
 
\t \t minViewMode: 0, 
 
\t \t multidate: false, 
 
\t \t multidateSeparator: ',', 
 
\t \t orientation: "auto", 
 
\t \t rtl: false, 
 
\t \t startDate: -Infinity, 
 
\t \t startView: 0, 
 
\t \t todayBtn: false, 
 
\t \t todayHighlight: false, 
 
\t \t weekStart: 0 
 
\t };

con:

var defaults = $.fn.datepicker.defaults = { 
 
\t \t autoclose: false, 
 
\t \t beforeShowDay: $.noop, 
 
\t \t calendarWeeks: false, 
 
\t \t clearBtn: false, 
 
\t \t daysOfWeekDisabled: [], 
 
\t \t endDate: Infinity, 
 
\t \t forceParse: true, 
 
\t \t format: 'yyyy-mm-dd', 
 
\t \t keyboardNavigation: true, 
 
\t \t language: 'en', 
 
\t \t minViewMode: 0, 
 
\t \t multidate: false, 
 
\t \t multidateSeparator: ',', 
 
\t \t orientation: "auto", 
 
\t \t rtl: false, 
 
\t \t startDate: -Infinity, 
 
\t \t startView: 0, 
 
\t \t todayBtn: false, 
 
\t \t todayHighlight: false, 
 
\t \t weekStart: 0 
 
\t };

2

Ho usato questo metodo per eseguire la stessa operazione nel mio app.

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); 
0

questo lavoro per me:

$('#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); 
}); 
2

se in jQuery dateformat non funziona allora possiamo gestire questa situazione in pagina html nel campo di immissione della data

<input type="text" data-date-format='yyyy-mm-dd' id="selectdateadmin" class="form-control" required>

e in javascript sotto questa pagina aggiungi la tua data Codice picker

$('#selectdateadmin').focusin(function() 
 
    { 
 
     $("#selectdateadmin").datepicker(); 
 
     
 
    });

1

basta aggiungere dateFormat:'yy-mm-dd' ai vostri .datepicker({}) impostazioni, il .datepicker({}) può essere simile a questo

  $("#datepicker").datepicker({ 
       showButtonPanel: true, 
       changeMonth: true, 
       dateFormat: 'yy-mm-dd' 
      }); 
      }); 

    </script> 
+0

Questo era già nella risposta accettata, Che cosa aggiunge la tua risposta oltre a questo? – Raidri

0

Questo è ciò che ha funzionato per me in ogni versione DatePicker, in primo luogo la conversione data in formato data data Data interno, quindi riconvertirla in quella desiderata

var date = "2017-11-07"; 
date = $.datepicker.formatDate("dd.mm.yy", $.datepicker.parseDate('yy-mm-dd', date)); 
// 07.11.2017 
0

Per me in datetimepicker formato di jQuery plugin: 'D/M/Y' opzione è lavorato

$("#dobDate").datetimepicker({ 
lang:'en', 
timepicker:false, 
autoclose: true, 
format:'d/m/Y', 
onChangeDateTime:function(ct){ 
    $(".xdsoft_datetimepicker").hide(); 
} 
}); 
Problemi correlati