2013-04-26 4 views
0

J'ai 4 listes déroulantes sur une page qui dépendent de la liste déroulante précédente.Jquery Event Basé sur le remplissage de données

D1 > D2 > D3 > D4 

Backstory:

L'idée est d1 d2 déclenche qui déclenche d3 d4 qui déclenche. La façon im de programmer ceci (pas mon choix mais une condition) est que je donne à la base de données la question de SQL et quand elle renvoie l'information elle remplit la liste déroulante. Cela signifie que si j'appelle d1, il envoie cette requête de base de données et avant que la base de données ne réponde, elle essaie d'envoyer la requête de base de données pour d2. Puisque d2 dépend de d1, cette erreur est due au fait que d1 est toujours nul ou la valeur précédente.

Question: Y a-t-il un moyen d'utiliser jquery pour déclencher un événement lorsque les données d'une liste déroulante changent.

Plus d'infos

J'ai déjà un .Modification() sur toutes les listes déroulantes, mais ceux qui semblent liés à l'utilisateur de les modifier. Je suis même ouvert à des suggestions sur la façon de faire cela différent pour que cela fonctionne. L'idée principale est que l'une des 4 listes déroulantes peut changer. Si D3 est changé alors D4 doit changer si D2 est changé alors D3 et D4 doivent changer.

Répondre

1

"Existe-t-il un moyen pour que jquery déclenche un événement lorsque les données d'une liste déroulante changent?"

oui, en quelque sorte. En supposant qu'une fonction modifie ces données, après avoir mis à jour les données, vous pouvez utiliser cette fonction pour déclencher l'événement change comme si l'utilisateur l'avait fait. Disons que vous voulez que cela déclenche pour D2

function updateData(){ 
    get data for D2; //obvious psuedo code 
    update data for D2; //obvious psuedo code 
    $('#D2').change(); //jquery fired the change on the dropdown as if the user made the change 
} 
Questions connexes