Alarm

cs_DomJ Messages postés 132 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 3 décembre 2013 - 7 mars 2007 à 16:18
cs_DomJ Messages postés 132 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 3 décembre 2013 - 12 mars 2007 à 20:11
Bonjour, je voudrais faire un script que, on met l'alarm à telle heure, puis à cette heure précise, (si la fenêtre est ouvert, ça ouvre un "alert()" avec le texte qu'on a choisi.
Mais seulement rien ne marche, j'ai corrigé mes erreurs les plus visible, mais là ça marche pas et pourtant dans ma console d'erreur y a pas d'erreur;

Quelqu'un peut me trouver la faille?:

<script language="javascript">
function alrm(){
var d=new Date();
var h=d.getHours();
var m=d.getMinutes();
var s=d.getSeconds();
var hs=document.h.h.value;
var ms=document.h.m.value;
var ss=document.h.s.value;
var txt=document.h.txt.value;
var ghour=h+":"+m+":"+s;
var sgour=hs+":"+ms+":"+ss;
if(ghour==shour){
alert(txt);
}else{
setTimeout("alrm()",1000);
}
}
</script>

<form name="h">
:
::

Texte:

</form>

5 réponses

Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
7 mars 2007 à 16:28
Salut a toi,
déjà plusieurs chose ( et encore une fois ) utiliser document.getElementById plutôt que document.h.h.value.
Ensuite tu as deux fois h dans tes inputs. comme name ....
donc pour moi ton code serait plutôt
<script language="javascript">
function alrm(){
var d=new Date();
var h=d.getHours();
var m=d.getMinutes();
var s=d.getSeconds();
var hs=document.getElementById("h").value;
var ms=document.getElementById("m").value;
var ss=document.getElementById("s").value;
if(h==hs && m == ms && s==ss){
    // affiche le texte
    alert(document.getElementById("txt").value);
}else{
setTimeout("alrm()",1000);
}
}
</script>

<form name="h">
:
::

Texte:

</form>

quad dis-tu ?

[o-_-o]
0
cs_DomJ Messages postés 132 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 3 décembre 2013 1
8 mars 2007 à 01:06
il n'y a pas d'erreur dans la console, tout est bien, mais c'est pourquoi je me demande pourquoi ça ne marche pas mais merci du conseil de getelementbyId
0
Zobibol Messages postés 469 Date d'inscription mercredi 9 janvier 2002 Statut Membre Dernière intervention 20 février 2017 6
8 mars 2007 à 09:58
Bah c'est simple, si tu regardes dans ton formulaire d'origine  ( comme l'a fait judicieusement constaté Bultez ), tu as :
 var ghour= h+":"+m+":"+s;
var sgour=hs+":"+ms+":"+ss;
if( ghour==shour ){

or la variable shour n'éxiste pas.

Ensuite dans ton formulaire:
<form name ="h">
:
::

du coup ça ne fonctionnera jamais vu que tu as deux fois le même name ( h ), ou plutôt ça fonctionnera mais uniquement à 10:10 ou 11:11... puis que tu ne récupères jamais les minutes !

voilà

[o-_-o]
0
cs_DomJ Messages postés 132 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 3 décembre 2013 1
12 mars 2007 à 20:05
hein, merci, du coup j'avais pas vu ça merci (Bultez)
Je voulais écrire "shour" et "ghour" mais je me suis trompé!
Et pour l'autre heureur un autre affaire!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_DomJ Messages postés 132 Date d'inscription dimanche 4 décembre 2005 Statut Membre Dernière intervention 3 décembre 2013 1
12 mars 2007 à 20:11
en passant, ça ne marche toujours pas :(
0
Rejoignez-nous