JS value peut passer nombre mais pas de txt

Résolu/Fermé
Archeus01 Messages postés 1567 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 - 14 mai 2009 à 12:10
Archeus01 Messages postés 1567 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 - 14 mai 2009 à 13:40
Bonjour,

Pourquoi ceci
<input name="id_utilisateur" id="id_utilisateur" type="text" value="" />
<a href="#" onclick='document.getElementById("id_utilisateur").value =<?php echo '12'; ?>'>changer val</a>
fonctionne (je me retrouver bien avec 12 dans mon input)

alors que ceci :(je remplace 12 par toto)
<input name="id_utilisateur" id="id_utilisateur" type="text" value="" />
<a href="#" onclick='document.getElementById("id_utilisateur").value =<?php echo 'toto'; ?>'>changer val</a>
ne fonctionne pas?

On ne peut pas passer de chaine par value?
Je ne comprends pas...
Merci de m'expliquer comment je peux rentrer une chaine dans un input via JS.
(je reviens vers 13h30)

2 réponses

Ozimandias Messages postés 502 Date d'inscription jeudi 14 mai 2009 Statut Membre Dernière intervention 10 mars 2010 46
14 mai 2009 à 12:22
Essaye ça:

<input name="id_utilisateur" id="id_utilisateur" type="text" value="" />

<a href="#" onclick='document.getElementById("id_utilisateur").value =<?php echo '12'; ?>'>changer val</a>

<a href="#" onclick='document.getElementById("id_utilisateur").value ="<?php echo 'toto'; ?>" '>changer val</a>

Explication: dans le premier cas, tu envoie:
<a href="#" onclick='document.getElementById("id_utilisateur").value =12; ?>'>changer val</a>

la 12 est un nombre, pas besoin de cotes.

dans le 2eme cas tu envoie:
<a href="#" onclick='document.getElementById("id_utilisateur").value =toto; '>changer val</a>
et la tu demandes à java d'envoyer un nombre de la valeur toto (qui n'est pas un nombre) d'où ton erreur. Si tu met des cotes de chaque côté de ton code php, tu lui dis que c'est du texte.


j'espère avoir été clair et t'avoir aidé...
1
NookZ Messages postés 2138 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 7 mars 2013 513
14 mai 2009 à 12:25
En effet ça semble plus logique que mon idée.
0
Archeus01 Messages postés 1567 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 447
14 mai 2009 à 13:40
Un gros merci Ozimandias. J'ai la solution et je comprends mon erreur. L'un étant pour moi aussi important que l'autre.
0
NookZ Messages postés 2138 Date d'inscription jeudi 29 janvier 2009 Statut Membre Dernière intervention 7 mars 2013 513
14 mai 2009 à 12:15
Bonjour,

C'est un problème dû aux onequote ( ' ) qui ferme le onclick quand vous les insérer au milieu.
JS comprend ceci :
onclick='document.getElementById("id_utilisateur").value =' // ici fin du onclick pour l'interpréteur
12' '>changer val</a>

Il faut donc faire :
<input name="id_utilisateur" id="id_utilisateur" type="text" value="" />
<a href="#" onclick="document.getElementById('id_utilisateur').value =<?php echo 'toto'; ?>">changer val</a>
0