Fonction avec parametres

Signaler
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour,

Voila mon pb : j'utilise une fonction JS qui rend une liste selectionnable/deselectionnable selon qu'une checkbox est cochee/decochee.
Ma fonction se presente comme suit :

function choixType_enrobe()
{
  if (document.con_f_n.enrobecoche.value == "0")
  {
    document.con_f_n.enrobe.disabled=false;
    document.con_f_n.enrobecoche.value = "1";
  }else{
    document.con_f_n.enrobe.disabled=true;
    document.con_f_n.enrobecoche.value = "0";
  }
};


et le code HTML comme cela :

<form name="con_f_n" method="post">
Choisissez les paramètres de la recherche : 

</form>

Liste4 c'est une fonction php qui cree une liste deroulante nommee 'enrobe'.

Ce code fonctionne mais ce que je voudrai, c'est pouvoir passer en parametre de la fonction le nom du formulaire et les noms du champ cache et de la liste deroulante pour pouvoir reutiliser la meme fonction pour d'autres checkbox.
J'ai essaye ca : 

<code>
function choix(formulaire,cache,nom_case)
{
  if (document.formulaire.cache.value == "0")
  {
    document.formulaire.nom_case.disabled=false;
    document.formulaire.cache.value = "1";
  }else{
    document.formulaire.nom_case.disabled=true;
    document.formulaire.cache.value = "0";
  }
};

en appelant la fonction comme ca :



mais j'obtiens comme erreur :
Nom de l'exception : TypeError
Message d'erreur reçu : 'document.formulaire.cache' a la valeur Null ou n'est pas un objet.

Je debute en JS ; est ce que ce que je veux faire est possible ??? et si oui, qu'est ce qui ne va pas dans mon code ?
Au secours, quelqu'un peut m'aider ? Merci.

11 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
Bonjour,
function choix(cache,nom_case)
{if (cache.value == "0")
     { nom_case.disabled=false;
       cache.value = "1";    }
else { nom_case.disabled=true;
       cache.value = "0";    }    };
....


si ça convient ?
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Non, ca marche toujours pas.
Merci quand meme.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
ça ne convient peut-être pas
mais ça marche (enfin chez moi
windows+internet explorer)
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Alors la je comprends plus, j'ai la meme config que toi... Est ce qu'il y aurait des parametres a activer dans ie ?
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Alors la je comprends plus, j'ai la meme config que toi... Est ce qu'il y aurait des parametres a activer dans ie ?
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
quelle est l'erreur ou qu'est-ce
qui ne va pas dans :
<head>
<script type="text/javascript">
function choix(cache,nom_case)
{if (cache.value == "0")
{ nom_case.disabled=false;
cache.value = "1"; }
else { nom_case.disabled=true;
cache.value = "0"; } };
</script>
</head>

<form name="con_f_n">

</form>


Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Ben, en fait, la fenetre internet m'indique juste "Erreur sur la page" avec un point d'exclamation dans le petit logo jaune triangulaire en bas de la fenetre.
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
je ne comprend pas,
en faisant copier/coller de l'exemple
"tel quel", dans une page html, sans
rien dautres ?
c'est mon niveau d'incompétence ?
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Euhhh, ben oui, ton code marche quand je fais un copier/coller.
Du coup, ca doit etre ailleurs que mon code a un pb. Je vais tout reverifier. Merci bcp de ton aide.
Salut.
Messages postés
128
Date d'inscription
mardi 11 mai 2004
Statut
Membre
Dernière intervention
12 août 2005

Ca y est ca marche. J'ai integre ton bout de code dans ma page complete et tout marche. Je comprend toujours pas ce qui allait pas c'est un peu frustrant mais bon, ca fonctionne maintenant.
Encore merci :-))
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
si tu ne trouve pas, envoyer code généré
par php, on regardera.
Cordialement Bul. [Site] [[mailto:marcel.Bultez@Tiscali.fr Mail]]