Html javascript formulaire

Fermé
Driversat - 3 mars 2009 à 00:28
Azer_Ty Messages postés 104 Date d'inscription vendredi 31 octobre 2008 Statut Membre Dernière intervention 4 juillet 2011 - 27 juin 2009 à 10:49
Bonjour,
j'ai créé un bout de code en javascript, mais j'ai deux problèmes:
1-quand je tape dans le champ de saisie un code différent de 16 caractères, la page se recharge mais efface le code saisi.
2-quand je mets un code de 16 caractères, ça marche bien mais l'icone du navigateur ne cesse pas de tourner et je ressens le ventilateur du processeur augmenter de vitesse.
Voici le code:

<html><head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>Livebox h235 to unlock code converter.</title>
<script language="javascript">
<!--
var s;
var r;
function verif_formulaire(){
s=document.formulaire.nom.value;
if(s == "" || s.length !== 16){
alert("Veuillez entrer un code de 16 caractères!");
document.formulaire.nom.focus();
return false;
}
else {
r=s[9]+s[4]+s[1]+s[12]+s[14]+s[5]+s[13]+s[6]+s[15]+s[3]+s[8]+s[0]+s[7]+s[10]+s[2]+s[11];

}
affiche();
}
//-->
</script>
</head><body>
Tapez <font color='#0010FF' size='4'> redboot_fconfig_get --parameter h235_key /dev/mtd4</font> dans le shell de votre Livebox et collez le résultat ici:<br><br>
<form name="formulaire" action="" method="post" onSubmit="verif_formulaire()">
<input type="text" size="16" name="nom"> <input type="submit" value="Envoyer">
</form>
<script>
function affiche(){
document.write ("<center><font color='#0010FF' size='5'>Votre code pour débloquer Livebox est: <br><br></font>","<font color='#FF0101' size='8'>"+r+"</font>");
}
</script>
</body></html>
A voir également:

2 réponses

Azer_Ty Messages postés 104 Date d'inscription vendredi 31 octobre 2008 Statut Membre Dernière intervention 4 juillet 2011 60
3 mars 2009 à 17:07
Bonjour,
En fait lorsque l'on utilise le document.write(); on ouvre le document, le chargement se poursuit car le document n'est pas fermé, il suffit de faire :
function affiche(){
	document.write ("<center><font color='#0010FF' size='5'>Votre code pour débloquer Livebox est: <br /><br /></font>","<font color='#FF0101' size='8'>"+r+"</font></center>");
	document.close();
}

Bonne continuation.
0
Merci bcp Azer_Ty pour l'astuce.
pour le focus je cherche encore :)
0
Azer_Ty Messages postés 104 Date d'inscription vendredi 31 octobre 2008 Statut Membre Dernière intervention 4 juillet 2011 60
27 juin 2009 à 10:49
Bonjour,

Pour le problème du rechargement de la page, le problème vient du "onsubmit" car en faisant un submit on demande au formulaire d'envoyer les données vers une autre page, spécifiée dans le champ "action" du formulaire. Si rien n'est spécifié on a un rechargement de page et une perte du code javascript.

il suffit donc de faire :
<form name="formulaire" action="" method="post">
<input type="text" size="16" name="nom"> <input type="button" value="Envoyer" onclick="verif_formulaire()">
</form>

Bonne journée,
0