Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

code fonctionnant sous ie mais pas sous Fire fox

2 réponses
Avatar
Pascal
bonjour
Je débute en javascript et ne comprends pas pourquoi ce script ne fonctionne
pas sous firefox. Sous ie les tests fonctionnent et la redirection aussi.
Sous Firefox seuls quelques tests fonctionnent et la redirection jamais : on
reste sur la même page!


J'ai changé quelques lignes sans succès:
//document.formulaire.classe.focus(); est remplacé par
document.forms['formulaire'].elements['classe'].focus();

La page se trouve ici http://www.scalpa.info/rentree

merci de votre aide
pascal

<script type="text/javascript">
//<![CDATA[
<!--
function verif_formulaire()
{
if(document.formulaire.classe_actuelle.value == "?") {
alert("Veuillez choisir votre classe actuelle!");
//document.formulaire.classe_actuelle.focus();
document.forms['formulaire'].elements['classe_actuelle'].focus();
return false;
}

// validate matiere
myOption = -1;
for (i=formulaire.matiere.length-1; i > -1; i--) {
if (formulaire.matiere[i].checked) {
myOption = i; i = -1;
}
}
if (myOption == -1) {
alert("Tu dois choisir une matière");
return false;
}

if(document.formulaire.prenom.value == "") {
alert("Veuillez entrer votre prenom!");
//document.formulaire.prenom.focus();
document.forms['formulaire'].elements['prenom'].focus();
return false;
}
if(document.formulaire.nom.value == "") {
alert("Veuillez entrer votre nom!");
//document.formulaire.nom.focus();
document.forms['formulaire'].elements['nom'].focus();
return false;
}

// validate sexe
myOption = -1;
for (i=formulaire.sexe.length-1; i > -1; i--) {
if (formulaire.sexe[i].checked) {
myOption = i; i = -1;
}
}
if (myOption == -1) {
alert("Tu dois choisir un sexe");
return false;
}

if(document.formulaire.classe.value == "?") {
alert("Veuillez choisir la classe d'origine!");
//document.formulaire.classe.focus();
document.forms['formulaire'].elements['classe'].focus();
return false;
}

//Choix de la page
if(document.formulaire.matiere[0].checked == true)
{
document.formulaire.action ="voc/index.php";
}
else
if(document.formulaire.matiere[1].checked == true)
{
document.formulaire.action ="conj/index.php";
}
else
if(document.formulaire.matiere[2].checked == true)
{
document.formulaire.action ="gram/index.php";
}
else
if(document.formulaire.matiere[3].checked == true)
{
document.formulaire.action ="orth/index.php";
}
else
if(document.formulaire.matiere[4].checked == true)
{
document.formulaire.action ="lect/index.php";
}
return true;


}
//-->
//]]>
</script>

--
http://www.scalpa.info

2 réponses

Avatar
Mickaël Wolff
Pascal wrote:
bonjour
Je débute en javascript et ne comprends pas pourquoi ce script ne
fonctionne pas sous firefox.


Chez moi il fonctionne, mais vu que je ne sais pas ce que le script
est censé faire, ben je ne vois pas de dysfonctionnement ;) Si le script
fonctionnait, tu peux peut-etre préciser les versions des navigateurs
testés ?

Sous ie les tests fonctionnent et la


ie ? Tu veux certainement parler de MSIE ? Quelle version ?

redirection aussi. Sous Firefox seuls quelques tests fonctionnent et la
redirection jamais : on reste sur la même page!


C'est quoi une "redirection" pour toi ?

La page se trouve ici http://www.scalpa.info/rentree


C'était donc pas la peine de le coller dans ton message.

Quelques conseils en vrac au vu du code :
- il faut indenter ton code
- il faut déclarer les variables que tu créé (mot-clé var).
- il faudrait que ton site fonctionne sans le javascript
- ton HTML n'est pas valide (validator.w3.org)


--
Mickaël Wolff aka Lupus Michaelis
http://lupusmic.org
Avatar
SAM
Le 8/15/09 10:52 AM, Pascal a écrit :
bonjour
Je débute en javascript et ne comprends pas pourquoi ce script ne
fonctionne pas sous firefox. Sous ie les tests fonctionnent et la
redirection aussi. Sous Firefox seuls quelques tests fonctionnent et la
redirection jamais : on reste sur la même page!



l'erreur actuelle sur la page :
<http://www.scalpa.info/rentree/>
est

frm.elements[classe_actuelle]

au lieu de :

frm.elements['classe_actuelle']

Vérifier tout le reste dans ce sens
(les noms des éléments doivent être entre ' (apostrophes) )
bien que, au survol rapide, ce soit OK.

Ha! vérifier le doc-type qui n'a pas l'air de plaire à mon Firefox

--
sm