Activation selon heure (fct° faite mais pb) - Page 3
Résolu
Précédent
- 1
- 2
- 3
-
Je te remercie sam3000. Ca répond exactement à ma demande. (mis à part au niveau du test si valide ou non. Je préfère <= ou >= pluto que < ou >)
Aini, çà me plaît mieux. Il ne me restera qu'à remettre ton code en forme pour que ce soit un peu plus personnel (et oui, je n'aime pas pomper le travail des concepteurs). Ensuite, je retirerai le paramétrage des secondes. Je n'ai pas besoin d'être aussi précis mais tu ne pouvais pas le savoir.
Si tu es intéressé, je te passerrai ma version finale mes je pense que niveau codes à ralonges, vous avez eu votre dose. LoL
++
et merci encore
Nico.
(Je ne cloture pas cette discussion. Je pourrais encore avoir besoin de vous à ce sujet. hihi!!!!) -
non, je t'en pris!
ferme ce post, et si tu as besoin d'aide ouvre un nouveau post!
j'en ait ma dose de ces long listings!!
-
Il faut que tu coche 'résolu' mister nrobin please...
-
voici ma version !!
c'est fou ce que le javascript peut etre efficace !!
<html> <head> <title>Activation par date/heure</title> </head> <script language="JavaScript" type="text/javascript"> // Date Courante var DateTimer; function Field(name,max,pad,sep,offu,offd) { this.name=name; // nom conforme aux getXxx de l'objet Date this.max=max; // combien de valeur ? , 0 => pas limite this.pad=pad; // ca se presente sur combien de chiffre this.sep=sep; // avec quel separateur qui suit this.offu=offu; // ca commence a combien pour un humain this.offd=offd; // ca commence a combien pour l'objet Date } var fields=[ new Field("Date", 31,2,"/",1,1), new Field("Month", 12,2,"/",1,0), new Field("FullYear", 0,4," ",0,0), new Field("Hours", 24,2,":",0,0), new Field("Minutes", 60,2,":",0,0), new Field("Seconds", 60,2,"" ,0,0) ]; function zeroHead(v,count) { var str = v.toString(); while(str.length<count) str="0"+str; return str; } Date.prototype.formated=function() { var res=""; for(var i=0;i<fields.length;i++) { field=fields[i]; var v=eval("this.get" + field.name + "();") res+= zeroHead(v - field.offd + field.offu ,field.pad) + field.sep; } return res; } Date.prototype.toForm=function(line) { for(var i=0;i<fields.length;i++) { field=fields[i]; var v=eval("this.get" + field.name + "();"); v-=field.offd; // on rammene ca commencant a zero //v=zeroHead(v+field.offu,field.pad); // c'est fait par la liste du formulaire eval("document.idDates.idDate" + line + field.name + ".value=v;"); } } Date.prototype.fromForm=function(line) { for(var i=0;i<fields.length;i++) { field=fields[i]; var v=eval("document.idDates.idDate" + line + field.name + ".value;"); v=parseInt(v); v+=field.offd; eval("this.set" + field.name + "(v);"); } return this; } function DateCourante() { var date=new Date(); document.idDates.idDateCourante.value=date.formated(); DateTimer=setTimeout("DateCourante()",1000); } function DateDebutInit() { var date=new Date(); date.toForm("Debut"); } function DateFinInit() { var date=new Date(); date.toForm("Fin"); } function ValiderDate() { var valide=true; var dtCourante=new Date(); var dtDebut=(new Date()).fromForm("Debut"); var dtFin =(new Date()).fromForm("Fin"); //alert("c="+dtCourante+",D="+dtDebut+",F="+dtFin); //valide=(dtDebut-dtCourante)<0 && (dtCourante-dtFin)<0; valide=(dtDebut<dtCourante) && (dtCourante<dtFin); alert( valide ? "Valide :)" : "Non Valide!!" ); return valide; } function main() { DateCourante(); DateDebutInit(); DateFinInit(); } function main_close() { clearTimeout(DateTimer); } </script> <body onload="main()" onunload="main_close()"> <form name="idDates"> <table> <tr> <td> Date Courante : </td> <td> <input name="idDateCourante"/> </td> <td></td> <td></td> </tr> <script language="JavaScript" type="text/javascript"> var lines=["Debut","Fin"]; for(l=0;l<lines.length;l++) { document.write("<tr>"); document.write("<td> Date " + lines[l] + " : </td>"); document.write("<td>"); document.write("<select name='idDate" + lines[l] + "Date'>"); for(var i=0;i<31;i++) document.write("<option value='" + i + "'>" + zeroHead(i+1,2) + "</option>"); document.write("</select>/"); document.write("<select name='idDate" + lines[l] + "Month'>"); for(var i=0;i<12;i++) document.write("<option value='" + i + "'>" + zeroHead(i+1,2) + "</option>"); document.write("</select>/"); document.write("<input name='idDate" + lines[l] + "FullYear'/><br/>"); document.write("</td>"); document.write("<td> Heure " + lines[l] + " : </td>"); document.write("<td>"); document.write("<select name='idDate" + lines[l] + "Hours'>"); for(var i=0;i<24;i++) document.write("<option value='" + i + "'>" + zeroHead(i,2) + "</option>"); document.write("</select>:"); document.write("<select name='idDate" + lines[l] + "Minutes'>"); for(var i=0;i<60;i++) document.write("<option value='" + i + "'>" + zeroHead(i,2) + "</option>"); document.write("</select>:"); document.write("<select name='idDate" + lines[l] + "Seconds'>"); for(var i=0;i<60;i++) document.write("<option value='" + i + "'>" + zeroHead(i,2) + "</option>"); document.write("</select>"); document.write("</td>"); document.write("</tr>"); } </script> </table> <br/><input name="idValider" type="submit" value="Valider" onclick="ValiderDate();return false;"> </form> </body> </html> -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
-
Je vous remercie tous pour votre contribution.
A la prochaine pour une prochaine contribution. LoL.
J'espère quand même être capable de me débrouiller un peu plus tout seul. :-)
++
Précédent
- 1
- 2
- 3