|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Membre du Club
![]() ![]() Inscription : mars 2003 Messages : 36 ![]() |
Bonjour à tous,
Je suis confronté à un problème depuis quelques jours sans parvenir à trouver une solution. Je cherche a faire un select dynamique en fonction des résultats d'un select précédent. Cela marche très bien lorsque je teste la page de formulaire en direct. Mais cela ne fonctionne plus lorsque cette page est appelé dans une div. En gros, j'ai une div_gauche qui contient le menu, et une div_droite qui contient la page correspondante. Le chargement se fait via la fonction suivante : Code :
Code :
Si quelqu'un a une idée, je suis preneur. |
||||
|
|
00
|
|
|
#2 |
|
Membre habitué
![]() Développeur Web Inscription : avril 2007 Messages : 323 ![]() |
Hello, met nous donc ton html aussi pour y voir plus clair.
__________________
L'intelligence c'est comme la confiture, moins tu en as , plus tu l'étales... |
|
|
00
|
|
|
#3 | ||||||
|
Membre du Club
![]() ![]() Inscription : mars 2003 Messages : 36 ![]() |
Voici les trois fichiers html :
- Le header - Le menu de gauche - Le contenu de droite Le header : ------------------------------------ Code :
------------------------------------ Code :
------------------------------------ Code :
|
||||||
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Didier MouronvalDéveloppeur Web Inscription : juin 2008 Messages : 13 808 ![]() |
Il y a certains points peu clairs dans ton message et certaines maladresses dans ton code.
* Quel est le rapport entre tes deux codes ? * Mélanger jQuery et du JavaScript natif est maladroit, utilises jQuery partout. Ta fonction envoieRequete() par exemple pourrait être réécrite. * Si le résultat de getJSON() est bien un objet JSON, il ne possède pas de propriété length (et une boucle for peut être réalisée avantageusement avec each()). * Si le select qui lance getJSON() est ajouté via AJAX, lorsque ton code est exécuté, il n'existe pas dans la page et l'événement associé ne peut donc pas être attaché (voir du coté de delegate() ou on()). * $("select#select_societe") est une écriture maladroite qui peut obliger jQuery a des traitements supplémentaires inutiles, puisqu'un id doit être unique dans la page, $("#select_societe") suffit amplement et est plus efficace !
__________________
Pas de question technique par MP ! Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi ! Vous possédez un blog et aimeriez diffuser vos billets sur le forum, contactez-moi ! Mes formations video2brain : La formation complète sur JavaScript • JavaScript et le DOM par la pratique • PHP 5 et MySQL : les fondamentaux Mon livre sur jQuery
|
|
00
|
|
|
#5 |
|
Membre du Club
![]() ![]() Inscription : mars 2003 Messages : 36 ![]() |
Merci pour ces infos, je vais nettoyer un peu tout ça.
Par contre, je pense avoir isoler le problème. Je crois que cela vient de la ligne : Code :
document.getElementById(position).innerHTML = xhr_object.responseText; |
|
|
00
|
|
|
#6 | ||
|
Membre du Club
![]() ![]() Inscription : mars 2003 Messages : 36 ![]() |
Bon, j'ai trouvé d’où venait le problème. Effectivement, quand on utilise du Jquery au lieu de faire des mélanges, ça fonctionne mieux.
J'ai réécrit ma fonction de redirection, le code est maintenant bien interprété. Voici le code final : Code :
|
||
|
|
00
|
Copyright © 2000-2012 - www.developpez.com