Petit "soucis" en JS

6 réponses
AuteurMessage

mirage |
Modérateur

Photo de mirage

Inscrit le : 04/05/2005

# Le 30/08/2005 à 15:09

Hello

Alors j'ai besoin d'activer un champ au clic sur une input checkbox (par défaut il est en disabled), jusque là ça va, ça marche bien mais quand on décoche le checkbox, je n'arrive pas à remettre le champ concerné à disabled...

Auriez-vous une idée ?

<input type="checkbox" value="oui" name="upload" id="upload"
onclick="if (this.checked) document.ajout.image.disabled=0; } else
{ document.ajout.image.disabled=1; } return false;" />
<label for="upload"> Oui</label>
<input type="file" name="image" disabled="disabled" />

major Den | Denis
Membre

Photo de major Den

Inscrit le : 09/05/2005

# Le 30/08/2005 à 15:12

Et avec une petite accolade ouvrante après "if (this.checked)" ?

Rien ne sert de courir, on ira une autre fois.

mirage | Vincent
Modérateur

Photo de mirage

Inscrit le : 04/05/2005

# Le 30/08/2005 à 15:20

Il me réactive le input mais il n'affiche pas la croix dedans... quand je continue à cliquer il se passe rien.

Je précise que je suis sous Firefox et que j'ai pas testé sous IE parce que c'est pour une admin et que tous les admins ont Firefox (sinon on rentre pas ).

JeromeF | Jérôme
Membre

 

Inscrit le : 10/05/2005

# Le 30/08/2005 à 15:35

<form>
<input type="checkbox" id="upload" value="oui" onclick="javascript:if(document.getElementById('upload').checked) {document.getElementById('image').disabled=false; } else { document.getElementById('image').disabled=true; }" />
<label for="upload"> Oui</label>
<input type="file" id="image" disabled="disabled" />
</form>

ca marche avec ça

mirage | Vincent
Modérateur

Photo de mirage

Inscrit le : 04/05/2005

# Le 30/08/2005 à 16:08

Nop marche pas, au clic sur le checkbox : "Erreur : document.getElementById("image") has no properties" (console javascript de Firefox).

Merci quand même

Edit : ah bah si sur une page où il y a que ce code... c'est peut être l'attribut name du form qui doit gêner...

Edit 2 : bon je sais pas pourquoi, j'ai rien changé et tout s'est mis à marcher...

Merci Jérome

(Message édité le 30-08-2005 à 16h13 par mirage)

krucial | Jean Christophe
Administrateur

Photo de krucial

Inscrit le : 09/03/2005

# Le 30/08/2005 à 16:31

Fallait virer le "return false"

JC - Mes sitesOuvrir dans une nouvelle fenetre | Affiliation devis travauxOuvrir dans une nouvelle fenetre | Cotes voitures anciennesOuvrir dans une nouvelle fenetre

JeromeF | Jérôme
Membre

 

Inscrit le : 10/05/2005

# Le 30/08/2005 à 16:32

oui je l'ai testé sur une page vide après il faut surement voir qu'il n'y ait pas de conflit avec d'autre élément.

en faisant document.getElementById('image') ca cherche dans toute la page.

peut etre que document.ajout.getElementById('image') suffit d'ailleurs.

je crois que maintenant en js il vaut mieux utiliser les id + getElementById ca marche à la fois sous FF et IE

de rien ;)

Répondre

Vous ne pouvez pas participer au forum, car votre inscription n'a pas été validée. Pour vous faire valider en tant que Membre, cliquez ici.

© MHN - Tous droits réservés | CNIL N°844440 | 23/11/2024 21:07:25 | Généré en 5.13ms | Contacts | Mentions légales |