Verifier le champ date

Fermé
mili12loli1 Messages postés 15 Date d'inscription samedi 10 mars 2018 Statut Membre Dernière intervention 21 mars 2018 - 21 mars 2018 à 00:22
jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 - 1 avril 2018 à 20:32
bonsoir ,
je veut verifier le input de type date sachant que la date2 soit superieure a date1 et aussi date1 doit etre superieure a date du jour
voici mon code javascript

 onsubmit = function() {

    // date= date('d/m/y');
    tabdeb = (date1.value.split(/[- //]/));
    tabfin = (date2.value.split());
    Odeb = new Date(tabdeb[2],tabdeb[1],tabdeb[0]);
    Ofin = new Date(tabfin[2],tabfin[1],tabfin[0]);
    if(Odeb > Ofin) {
        alert ('La date d\'\arrivée ne doit pas être antérieure à la date de départ.');
        date1.focus(); date1.style.backgroundColor='#fee';
        return false
    };


    };

1 réponse

jordane45 Messages postés 38138 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 avril 2024 4 649
1 avril 2018 à 20:32
Bonjour,

Déjà .. on évite de mettre du code javascript directement dans la attributs html.
Il est préférable de le placer dans des balises scripts .. et d'y faire référence via le nom d'une fonction.
De plus, Dans les attributs html... on mets des quotes.... pour entourer le code/les fonctions javascript.

Par exemple :
onsubmit = 'verfidate();'

et dans des balises js
 <script type="text/javascript">

function verfidate() { 
  // date= date('d/m/y'); 
  var  tabdeb = date1.value.split(/[- //]/); 
  var tabfin = date2.value.split()); 
  var Odeb = new Date(tabdeb[2],tabdeb[1],tabdeb[0]; 
  var Ofin = new Date(tabfin[2],tabfin[1],tabfin[0]); 
   if(Odeb > Ofin) { 
        alert ('La date d\'\arrivée ne doit pas être antérieure à la date de départ.'); date1.focus();   
        date1.style.backgroundColor='#fee'; 
        return false;
   } 
 };

 </script>


Au passage... il est fortement recomandé d'initialiser ses variables avant de les utiliser ( d'où les "var" que j'ai ajouté )
Tu avais également un souci de point-virgule mal placé après ton return.
Reste que nous ne savons pas d'où viennent tes variables date1 et date2 ... à mon avis faudrait les initialiser avant de les utiliser.

NB : Penses aussi à regarder dans la console de ton navigateur que tu n'as pas d'erreur de script.



0