Regex JS

Bonjour,

Je souhaiterais effectuer une vérification en JS de champ saisie et je bloque sur le champ heure

qui se présente comme ca 00:00:00

Je n'arrive pas a la faire fonctionner je suis un noob en JS j'essaye de m'y mettre donc est ce que vous pouvez m'aider svp

merci d'avance
Configuration: Windows 2003
Internet Explorer 7.0

7 réponses

  1. function isHour(sHour){

    Le sHOUR est à changer , tu doisa voir un appel de fonction vide
    function isHour(){

    puisque appelé VIA php.
    1. excuse moi je comprend pas ce que t'as mis

      je dois adapter la fonction?

      que faut il que je change dans la fonction?

      function isHour(sHour){
      var sSeparator = ':';
      var withSeconds = false;
      if(sHour.match("^[0-9]{2}:[0-9]{2}:[0-9]{2}$")) var withSeconds = true;
      else if(!sHour.match("^[0-9]{2}:[0-9]{2}$")) return false;
      var arHour = sHour.split(sSeparator);
      var iHour = parseInt(arHour[0]);
      var iMinute = parseInt(arHour[1]);
      if(withSeconds) var iSecs = parseInt(arHour[2]);
      else var iSecs = 0;
      return (iHour >= 0 && iHour < 24) && (iMinute >= 0 && iMinute < 60) && (iSecs >= 0 && iSecs < 60);
      }
      1. meme si c'est un champ comme ca?

        Je veut dire comment je l'implémente dans ce code svp?
        1. Oublie mon mes un peu plus haut. J'ai lu de travers

          <form method="POST" action="<?php echo $page; ?>" id="formBoitier" onsubmit="return isHour();" >

          Dans ton isHour , tu dois mettre quelque part un truc du genre (car le code est à adapter, faux code...)
          function isHour(){
          sHour = champHeur.value } qui permettrait de récupérer l'heure.
      2. mec je viens de faire ca :

        function isHour(sHour){
        var sSeparator = ':';
        var withSeconds = false;
        if(sHour.match("^[0-9]{2}:[0-9]{2}:[0-9]{2}$")) var withSeconds = true;
        else if(!sHour.match("^[0-9]{2}:[0-9]{2}$")) return false;
        var arHour = sHour.split(sSeparator);
        var iHour = parseInt(arHour[0]);
        var iMinute = parseInt(arHour[1]);
        if(withSeconds) var iSecs = parseInt(arHour[2]);
        else var iSecs = 0;
        return (iHour >= 0 && iHour < 24) && (iMinute >= 0 && iMinute < 60) && (iSecs >= 0 && iSecs < 60);
        }
        mais je ne sais pas ou mettre cette fonction dans mon code php et surtout commet l'appellé.

        peut tu me dire stp?

        PS : ton refresh c'est trop bien merci
        1. pour l'appeler, rien de plus simple, dans ton php tu met
          echo '
          <SCRIPT language="JavaScript" type="text/javascript">
          isHour($Hour);
          </SCRIPT>
          ';
      3. ok alors je redis que je suis pas une star ok? lol

         var heure=new RegExp("^[0-9]{6});
        
        	if(document.enregistrement.heure.value !="" && !exp.test(document.enregistrement.heure.value)){
        	alert("Saisie non valide de l'heure");
        	return false;
        


        donc comme vous pouvez le voir j'ai pas trouvé le truc pour les ":"
        donc voila!