2010-07-26 4 views
0

J'ai une boîte d'option de sélection avec la valeur de la base de données. Si je sélectionne une option, les trois autres champs de texte seront chargés avec les données de la base de données en fonction de l'option select id ou de la valeur de la clé primaire. comment puis-je faire ça dans django, jquery. Merci beaucoupChamp d'entrée dynamique jquery sur l'option select onchange

Répondre

1

Dans l'esprit de l'enseignement d'un homme à pêcher, plutôt que de lui donner un peu à manger ...

  1. Vous devez utiliser pour lier une fonction de rappel au clic ou changement événement de l'entrée select.
  2. Cette fonction de rappel devrait faire jQuery.ajax() Appel GET à une vue de votre application Django qui renvoie spécifiquement les données que vous souhaitez ajouter aux champs de texte (je recommanderais qu'elle revienne au format JSON plutôt que HTML ou texte brut, comme le processus sera plus facile à traiter du côté client/récepteur)
  3. La fonction de rappel de l'appel jQuery.ajax() devrait alors prendre les données qui ont été renvoyées et placer les sections correspondantes dans les champs de texte correspondants (d'où pourquoi une structure JSON sera vraiment utile pour vous)

Si vous avez besoin de plus indices que cela, laissez-nous savoir, mais le readingdocs et/ou Googling votre façon de faire cela vous apprendra plus qu'un code de décharge.

0

Créez une vue Django qui prend en paramètre l'ID ou la clé primaire de l'option de sélection. La vue renvoie les valeurs dont vous avez besoin dans les trois autres champs de texte.

Sur la page avec le formulaire, vous aurez besoin d'un peu de jQuery qui, par ex. lors du changement du champ de sélection, appelle la vue Django et utilise le résultat pour remplir les champs de texte.

La façon de formater le résultat de la vue dépend de vous. Vous pourriez le faire aussi simple qu'une liste séparée par des virgules, vous pourriez aussi probablement faire quelque chose avec JSON ou devenir encore plus colombophile.

Questions connexes