JS value peut passer nombre mais pas de txt

Résolu
Archeus01 Messages postés 1572 Date d'inscription   Statut Membre Dernière intervention   -  
Archeus01 Messages postés 1572 Date d'inscription   Statut Membre Dernière intervention   -
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)
A voir également:

2 réponses

Ozimandias Messages postés 505 Date d'inscription   Statut Membre Dernière intervention   46
 
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   Statut Membre Dernière intervention   514
 
En effet ça semble plus logique que mon idée.
0
Archeus01 Messages postés 1572 Date d'inscription   Statut Membre Dernière intervention   452
 
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   Statut Membre Dernière intervention   514
 
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