Fonction js fonctionne sous IE mais pas sous FF

Résolu
krz_yama Messages postés 7 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 6 septembre 2008 - 26 août 2008 à 21:45
krz_yama Messages postés 7 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 6 septembre 2008 - 27 août 2008 à 00:05
Bonjour,

Voila je n'y connais rien en HTML ni Javascript, et après un petit
temps j'ai produit un bout de code qui fonctionne sous Internet
Explorer mais pas sous FireFox. Voilà le code :

<html>
<head>
</head>
 
      <script language=javascript>
    function redirige()
    {
    //vérification de la valeur de choix et redirection vers la bonne page
        if ((choix(0).checked)== 1)
        {
        document.location.href="http://krz.blogsite.org/nr.html";
        }
        if ((choix(1).checked)== 1)
        {
        document.location.href="http://krz.blogsite.org/se.html";
        }
        if ((choix(2).checked)== 1)
        {
        document.location.href="http://krz.blogsite.org/ar.html";
        }
        if ((choix(3).checked)== 1)
        {
        document.location.href="http://krz.blogsite.org/la.html";
        }
        if ((choix(4).checked)== 1)
        {
        document.location.href="http://krz.blogsite.org/au.html";
        }
    }
    </script>
 

 
      ----

                   

            <!-- creation des boutons radio-->
                <table>
                ----

               , Nouvelle République</td>
                </td>
                ----

                Séparatistes,
                </td>
                ----

                Alliance Rebelle,
                </td>
                ----

                L'Ancienne République,
                </td>
                ----

                Autres,
                </td>
               

           
           
        </td>
    </tr>
    </table>
    <!-- creation du bouton qui appellera la fonction js-->
   

   
               
   
</html>

J'explique vite fais ce que je veux faire. 5 boutons radio,
l'utilisateur fait un choix, et se retrouve redirigé sur une autre page
suivant ce qu'il a choisis.

Alors mon code est surement pas terrible vu que je n'y connais rien...
Si quelqu'un pouvait m'expliquer pourquoi FF me dis que "choix n'est
pas définit" alors qu'IE le prend très bien, et si possible un peu
d'aide sur ce que je dois faire pour résoudre ce problème. Merci d'avance.


Cordialement, KRz Yamaneko.

4 réponses

@karamel Messages postés 1855 Date d'inscription vendredi 9 mai 2008 Statut Modérateur Dernière intervention 18 avril 2024 153
26 août 2008 à 22:36
bonjour j'ai fait quelque modifs
par contre j'ai du faire du bricolage car j'ai donne un id et un name alors que normalement c'est l'un ou l'autre en gros ca marche mais si on te propose une solution plus clean choisi la
entre autre pour diminue la taille du script tu pourait faire une boucle

<html>
<head>
</head>
 
      <script language=javascript>
    function redirige()
    {
    //vérification de la valeur de choix et redirection vers la bonne page
        if (document.getElementById('choix1').checked==true)
        {
        document.location.href="http://krz.blogsite.org/nr.html";
        }
        if (document.getElementById('choix2').checked==true)
        {
        document.location.href="http://krz.blogsite.org/se.html";
        }
        if (document.getElementById('choix3').checked==true)
        {
        document.location.href="http://krz.blogsite.org/ar.html";
        }
        if (document.getElementById('choix4').checked==true)
        {
        document.location.href="http://krz.blogsite.org/la.html";
        }
        if (document.getElementById('choix5').checked==true)
        {
        document.location.href="http://krz.blogsite.org/au.html";
        }
    }
    </script>
 

 
      ----

                   

            <!-- creation des boutons radio-->
                <table>
                ----

               , Nouvelle République</td>
                </td>
                ----

                Séparatistes,
                </td>
                ----

                Alliance Rebelle,
                </td>
                ----

                L'Ancienne République,
                </td>
                ----

                Autres,
                </td>
               

           
          
        </td>
    </tr>
    </table>
    <!-- creation du bouton qui appellera la fonction js-->
   

   
              
   
</html>
3
PetoleTeam Messages postés 3426 Date d'inscription lundi 26 décembre 2005 Statut Membre Dernière intervention 14 janvier 2011 17
26 août 2008 à 23:17
Bonjour,
tout d'abord plusieurs petites remarques
en vrac

il est préférable de mettre <script type= "text/javascript">
plutôt que
<script
language=javascript>

il faut mettre des crochets et non des
parenthéses pour récupérer les objets en provenace d'un tableau comme c'est le
cas pour les INPUT type radio
donc choix[0].checked et non choix(0).checked

choix[0].checked prend la valeur false ou true donc
un simple test if(
choix[0].checked) est suffisant...

pour FireFox, la notion de name n'existe pas hors d'une FORM.
Dans ton cas
pour que choix soit définit il te faut donc mettre tes INPUTs type radio dans
une FORM et récupérer l'objet grace à la syntaxe document. nom_form .nom_radio.

exemple :
<html>
<head>
<script type ="text/javascript">

function redirige() {
  var choix = document.F_FORM.choix;
  if(
choix[0].checked) {
    document.location.href="http://krz.blogsite.org/nr.html";
  }
  if( choix[1].checked) {

    document.location.href="http://krz.blogsite.org/se.html";
  }

  if( choix[2].checked) {
    document.location.href="http://krz.blogsite.org/ar.html";
  }
  if( choix[3].checked) {

    document.location.href="http://krz.blogsite.org/la.html";
  }

  if( choix[4].checked) {
    document.location.href="http://krz.blogsite.org/au.html";
  }
}
</script>
</head>


<form name="F_FORM">
  Nouvelle République

  Séparatistes

  Alliance Rebelle

  L'Ancienne République

  Autres

  

</form>


</html>
Voila pour l'essentiel me semble
t-il...
;O)
3
krz_yama Messages postés 7 Date d'inscription dimanche 8 janvier 2006 Statut Membre Dernière intervention 6 septembre 2008
27 août 2008 à 00:05
C'est génial, merci à vous tous, pour les explications, et l'aide à porté :)

Ça fonctionne et en plus je sais d'où ça viens et pourquoi. Merci beaucoup.
3
taillecrayon Messages postés 109 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 23 novembre 2010
26 août 2008 à 22:54
Salut, il te manque les guillemets autour de choix c'est peut-être ça ?

taillecrayon
0
Rejoignez-nous