A voir également:
- Javascript checkbox onchange
- Telecharger javascript - Télécharger - Langages
- Node.js javascript runtime virus ✓ - Forum Virus
- Javascript echo ✓ - Forum PHP
- Erreur #125 javascript - Forum Mozilla Firefox
- Table de multiplication javascript ✓ - Forum Javascript
8 réponses
Breub62
Messages postés
2989
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
17 avril 2014
369
22 juin 2010 à 09:34
22 juin 2010 à 09:34
Test en mettant un alert() dans ton onChange pour savoir si c'est le onchange qui bugg ou la fonction que tu appelle
Je rajoute la fonction :
function change_ld(value_ld,id_ld) { alert('OK'); var conteneur = document.getElementById('indiv_modtaxe'); var html = document.createElement('p'); document.getElementById('hidden').value=(i); i=i+1; var code= "<input type='text' name='nom_societe_'"+i" id='"+id_ld+"' value='"+value_ld+"'/>"; html.innerHTML=(code); conteneur.appendChild(html); }
Breub62
Messages postés
2989
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
17 avril 2014
369
22 juin 2010 à 09:39
22 juin 2010 à 09:39
En faisant ça :
Ca n'affiche pas d'alerte??
<SELECT style="margin: 0 0 0 300px; overflow: auto; height:100px;" NAME="societe_ld" onChange="alert('aaa');" multiple="multiple">
Ca n'affiche pas d'alerte??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Breub62
Messages postés
2989
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
17 avril 2014
369
22 juin 2010 à 09:44
22 juin 2010 à 09:44
Si tu as bien ton alert (ce qui doit marcher j'ai testé ton code) c'est que tu as un problème avec ta fonction. Sous firefox tu peux faire Ctrl+Maj+J qui te permet de débugger js ; tu y verras sûrement plus clair...
var code= "<input type='text' name='nom_societe_'"+i" id='"+id_ld+"' value='"+value_ld+"'/>";
C'est cette ligne qui ne passe pas...
maka54
Messages postés
698
Date d'inscription
mercredi 8 avril 2009
Statut
Membre
Dernière intervention
4 décembre 2016
80
Modifié par maka54 le 22/06/2010 à 10:40
Modifié par maka54 le 22/06/2010 à 10:40
var code= "<input type='text' name='nom_societe_"+i+"' id='"+id_ld+"' value='"+value_ld+"'/>";
la simple quote qui dois etre à la fin et non après ton underscore
et avec un + apres i également
Breub62
Messages postés
2989
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
17 avril 2014
369
22 juin 2010 à 09:50
22 juin 2010 à 09:50
Donc ton alert('OK') fonctionne???
Sinon là je vois pas trop. Est-ce que value_ld et id_ld sont bien récupérés?
Sinon là je vois pas trop. Est-ce que value_ld et id_ld sont bien récupérés?
Finalement ça marche, enfin pas tout...
il ne récupère pas le id_ld et met id=""
en plus dans le name il met
??
function change_ld(value_ld,id_ld) { var conteneur = document.getElementById('indiv_modtaxe'); var html = document.createElement('p'); alert('Message d\'alerte à utiliser avec moderation'); var i =document.getElementById('hidden'); i=i+1; document.getElementById('hidden').value=(i); var code= "<input type='text' name='nom_societe_"+i+"' id='"+id_ld+"' value='"+value_ld+"'/>"; html.innerHTML=(code); conteneur.appendChild(html); }
il ne récupère pas le id_ld et met id=""
en plus dans le name il met
nom_societe_[object HTMLDivElement]1
??
Breub62
Messages postés
2989
Date d'inscription
lundi 7 juin 2010
Statut
Membre
Dernière intervention
17 avril 2014
369
22 juin 2010 à 10:00
22 juin 2010 à 10:00
Pour ça nom_societe_[object HTMLDivElement]1 c'est sûrement ton i qui est mal initialisé
Et s'il met id="" c'est que tu récupère mal id_ld...
Je sais que ça n'aide pas mais je ne peux pas plus t'aider. Bon courage
Et s'il met id="" c'est que tu récupère mal id_ld...
Je sais que ça n'aide pas mais je ne peux pas plus t'aider. Bon courage
2 choses toutes bêtes :
document.getElementById renvoie un NodeElement (une sorte de lien vers l'objet) donc tu n'auras aucune valeur utilisable directement. Si tu cherche à récupérer la "value" de "hidden" :
Pour l'id mal récupéré, en faites si, il est bien récupéré, juste que ton objet n'en possède pas :
Donc il ne récupérera rien...
Le ".value" d'un select récupère la value de l'option sélectionné (pas sûr de ce qu'il va vraiment cherché avec un multiple) mais le ".id" d'un select récupère l'ID du select pas des options à l'intérieurs.
var i =document.getElementById('hidden')
document.getElementById renvoie un NodeElement (une sorte de lien vers l'objet) donc tu n'auras aucune valeur utilisable directement. Si tu cherche à récupérer la "value" de "hidden" :
var i =document.getElementById('hidden').value
Pour l'id mal récupéré, en faites si, il est bien récupéré, juste que ton objet n'en possède pas :
<SELECT style="margin: 0 0 0 300px; overflow: auto; height:100px;" NAME="societe_ld" onChange='change_ld(this.value,this.id);' multiple="multiple">
Donc il ne récupérera rien...
Le ".value" d'un select récupère la value de l'option sélectionné (pas sûr de ce qu'il va vraiment cherché avec un multiple) mais le ".id" d'un select récupère l'ID du select pas des options à l'intérieurs.