javascript showon - Come faccio a pre-compilare una casella di testo jQuery Datepicker con la data odierna?




9 Answers

Aggiornamento: ci sono rapporti che non funzionano più su Chrome.

Questo è conciso e fa il lavoro:

$(".date-pick").datepicker('setDate', new Date());
accordion ui

Ho un calendario jQuery Datepicker molto semplice:

$(document).ready(function(){
    $("#date_pretty").datepicker({ 
    });
});

e ovviamente nell'HTML ...

<input type="text" size="10" value="" id="date_pretty"/>

La data odierna è ben evidenziata per l'utente quando viene visualizzato il calendario, ma come faccio a ottenere jQuery per pre-compilare la casella di testo stessa con la data odierna sul caricamento della pagina, senza che l'utente debba fare nulla? Il 99% delle volte, l'impostazione predefinita della data odierna sarà ciò che desidera.




var myDate = new Date();
var prettyDate =(myDate.getMonth()+1) + '/' + myDate.getDate() + '/' +
        myDate.getFullYear();
$("#date_pretty").val(prettyDate);

sembrava funzionare, ma potrebbe esserci un modo migliore di uscire ...




Impostare su oggi :

$('#date_pretty').datepicker('setDate', '+0');

Impostato per ieri :

$('#date_pretty').datepicker('setDate', '-1');

E così via con un numero qualsiasi di giorni prima o dopo la data odierna .

Vedi l' interfaccia utente di jQuery> Metodi> setDate .




Questo codice assicurerà di utilizzare il formato del tuo datepicker:

$('#date-selector').datepicker('setDate', new Date());

Non è necessario riapplicare il formato, utilizza il datapicker predefinito da te sull'inizializzazione di datepicker (se lo hai assegnato!);)




Il codice di David K ​​Egghead ha funzionato perfettamente, grazie!

$(".date-pick").datepicker(); 
$(".date-pick").datepicker("setDate", new Date()); 

Sono anche riuscito a tagliare un po 'e ha funzionato anche:

$(".date-pick").datepicker().datepicker("setDate", new Date()); 



Per impostare il datapicker su un certo tempo predefinito (la data corrente nel mio caso) al momento del caricamento, E quindi avere l'opzione di scegliere un'altra data la sintassi è:

    $(function() { 
        // initialize the datapicker
        $("#date").datepicker();

        // set the time
        var currentDate = new Date();
        $("#date").datepicker("setDate",currentDate);

    //  set the options for the button  
        $("#date").datepicker("option",{
            dateFormat: 'dd/mm',
            showOn: "button",
          // whatever option Or event you want 
        });
  });



Per pre-compilare la data, devi prima inizializzare datepicker, quindi passare il valore del parametro setDate.

$("#date_pretty").datepicker().datepicker("setDate", new Date());



Prova questo

$(this).datepicker("destroy").datepicker({
            changeMonth: false, changeYear: false,defaultDate:new Date(), dateFormat: "dd-mm-yy",  showOn: "focus", yearRange: "-5:+10"
        }).focus();



Funziona meglio per me, perché a volte ho problemi a chiamare .datepicker('setDate', new Date()); in quanto mette a disagio se ho il datepicker già configurato con parametri.

$("#myDateText").val(moment(new Date()).format('DD/MM/YYYY'));



Related

javascript jquery jquery-ui date jquery-ui-datepicker