2009-11-03 5 views
0

Expérience jquery dans les rails à travers des modèles .js.erb; mais complètement perplexe par un problème simple: pour une raison quelconque, quand l'action d'un certain contrôleur est appelée, elle est rappelée comme deux ou trois fois. et en plus de cela, le nombre de rappels à la même action augmente à mesure que la page est utilisée. donc je finis rapidement avec de longues boucles sur la même action ... il y a une vraie logique dans ce bug, mais quand même, on peut avoir du chapeau et comment le résoudre. y a-t-il des problèmes avec tose?rails .jr.erb modèles

+0

_____Post code_____ –

+0

Ben veuillez marquer cette question comme si elle répondait à votre question. merci – griegs

+0

'kay done; Désolé. Merci encore! – Ben

Répondre

0

Essayez de dissocier l'événement avant de l'attacher. ça aide de temps en temps avec mes trucs. Si vous utilisez le mot-clé en direct, arrêtez de l'utiliser. Si ce n'est pas le cas, essayez de l'utiliser. Je sais que cela ressemble à des conseils de déchets, mais j'ai fait ces étapes dans le passé pour résoudre les problèmes exactement comme vous l'avez décrit.

également, si vous avez réussi l'appel jquery, assurez-vous de ne pas relier les événements sur un ensemble d'objets définis par une classe. Cela ajoutera également des événements aux contrôles.

+0

je ne connais pas ce "mot-clé en direct" ... mais oui, il y a un problème quand je lie des choses sur un ensemble d'objets en cas de succès, le problème disparaît quand je les supprime. Le vrai problème est que je n'ai pas vraiment besoin de "re" lier les succès avec les trucs sur lesquels je travaille actuellement, mais parfois et de manière aléatoire les objets sont détachés ... – Ben

+0

Je suis avec toi. Si j'ai ce droit alors vous essayez de lier un événement tel que cliquer sur un contrôle (après) vous revenez d'un droit de publication jQuery droit? Et vous pouvez ou non créer des contrôles pour lier des événements. Le mot clé que je pense que vous voulez est "live". Fondamentalement, il va lier les événements à tous les objets que vous spécifiez et tous les objets à créer par la suite sans que vous ayez besoin de vous lier vous-même et donc créer des événements en double sur les contrôles existants. – griegs

+0

Consultez http://docs.jquery.com/Events/live pour une explication du mot-clé "live". – griegs