web-dev-qa-db-fra.com

Comment définir la valeur par défaut de l'entrée [type = "date"]

J'ai essayé ( JSFiddle ):

<input type="date" value="2012-3-23">

mais cela ne fonctionne pas, comment puis-je définir la valeur par défaut?

165
hh54188

La date doit prendre le format YYYY-MM-DD. Les jours et les mois à un chiffre doivent être complétés par un 0. Janvier est le 01.

De la documentation :

Une chaîne représentant une date.

Valeur: Date complète valide définie dans la [RFC 3339] , avec la réserve supplémentaire que la composante année est composée de quatre chiffres ou plus représentant un nombre supérieur à 0.

Votre code devrait être modifié pour:

<input type="date" value="2013-01-08">

Exemple jsfiddle

296
Lewis Norton

<input type="date" id="myDate" />

puis en js:

_today: function () {
  var myDate = document.querySelector(myDate);
  var today = new Date();
  myDate.value = today.toISOString().substr(0, 10);
},
21
Taufiq Ahmed

Une solution possible:

document.getElementById("yourDatePicker").valueAsDate = new Date();

Utilisation de Moment.js:

var today = moment().format('YYYY-MM-DD');
document.getElementById("datePicker").value = today;
20
Umair Khalid

si vous utilisez PHP, vous pouvez définir la valeur comme ceci

<input type="date" value="<?php echo date("Y-m-d");?>">

mais rappelez-vous qu'il renverrait la date du serveur. si vous souhaitez utiliser le client, utilisez plutôt javascript. J'espère que ça aide.

15
Toni Tegar Sahidi

Vous pouvez utiliser ce code js:

<input type="date" id="dateDefault" />

JS

function setInputDate(_id){
    var _dat = document.querySelector(_id);
    var hoy = new Date(),
        d = hoy.getDate(),
        m = hoy.getMonth()+1, 
        y = hoy.getFullYear(),
        data;

    if(d < 10){
        d = "0"+d;
    };
    if(m < 10){
        m = "0"+m;
    };

    data = y+"-"+m+"-"+d;
    console.log(data);
    _dat.value = data;
};

setInputDate("#dateDefault");
5
Corioquix

Le moyen le plus simple de définir la date actuelle est.

<input name="date" type="date" value="<?php echo date('Y-m-j'); ?>" required>

3
Awais Jameel

Vous pouvez faire quelque chose comme ça:

<input type="date" value="<?php echo date("Y-m-d");?>" name="inicio">
2
daronwolff

// Code HTML

<input id="idFdate" type="date" />

// code javascript sur la fonction de charge principale

function loadFunction() {
    // body...
    var today = new Date();
    var dd = today.getDate();
    var mm = today.getMonth()+1; //January is 0!
    var yyyy = today.getFullYear();

    if(dd<10){
        dd='0'+dd;
    } 
    if(mm<10){
        mm='0'+mm;
    } 

    today = yyyy+'-'+mm+'-'+dd;                
    document.getElementById("idFdate").defaultValue =today+"";
}
1
Sagar Khole
1 - @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
    <input type="date" "myDate">
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

    var today = new Date();
    $('#myDate').val(today.getFullYear() + '-' + ('0' + (today.getMonth() + 1)).slice(-2) + '-' + ('0' + today.getDate()).slice(-2));

2 - @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   <input type="datatime-local" id="myLocalDataTime" step="1">
    @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

var today = new Date();
$('#myLocalDataTime').val(today.getFullYear() + '-' + ('0' + (today.getMonth() + 1)).slice(-2) + '-' + ('0' + today.getDate()).slice(-2)+'T'+today.getHours()+':'+today.getMinutes());
1
Musa

J'ai trouvé que c'était la solution la plus simple:

document.getElementById('date_input').valueAsDate = new Date();

0
hasherfer
$date=date("Y-m-d");
echo"$date";
echo"<br>SELECT DATE: <input type='date'  name='date'  id='datepicker' 
value='$date' required >";
0
AAYUSH SAINI

Voici trois instructions pour trois dates différentes dans le formulaire avec trois champs type = date.

$inv_date est la date du jour:

$inv_date = date("Y-m-d");

$inv_date_from est le premier jour du mois en cours:

$inv_date_from = date("Y") . "-" . date("m") . "-" . "01";

$inv_date_to est le dernier jour du mois:

$inv_date_to = date("Y-m-t", strtotime(date("Y-m-t")));

J'espère que ça aide :)

0
user9923405

Utiliser Microsoft Visual Studio

Séparateur de date '-'

@ {string dateValue = request.Date.ToString ("aaaa" - "MM" - "jjTHH: mm: ss");}

<input type = "datetime-local" class = "form-control" name = "date1" value = "@ dateValue">

0
Sergey Matsko

vous pouvez afficher la date en suivant simplement le format correct

<input type="date" value="2014-12-29">
0
Kashif Latif

Code JS:

function TodayDate(){
        let data= new Date();
        return data.getFullYear().toString()+'-' + (data.getMonth()+1).toString()+'-' + data.getDate().toString()
    }
    document.getElementById('today').innerHTML = '<input type="date" name="Data" value="'+TodayDate()+'" ><br>';

Code HTML:

<div id="today" > </div>

Un peu rude mais ça marche!

0
CharliePrm88