Est-il possible de faire cela à l'intérieur d'une classe? Donc, fondamentalement, je veux passer une fonction de l'objet qui doit être exécutée chaque fois que l'on clique sur quelque chose. En outre, s'il y a plus d'une instance de cet objet, alors l'instance correcte (c'est-à-dire celle qui exécute ce code pour le champ donné) doit être exécutée.Pouvez-vous le faire en utilisant jquery?
Répondre
Oui, c'est possible.
il y a10 minutes ecrivais un snipet parce que je venais juste de ce problème
$("div.myalarms_delete").click(function(){
var mid = this.id;
$("li#"+mid).fadeOut("fast");
});
le div.myalarms_delete aussi comme id je avais besoin
Je ne suis pas sûr un moyen facile, mais vous pouvez toujours aller la route de fermeture:
var that = this;
$("#" + field).click(function() {
that.validate();
});
+1 b/c cela évite les problèmes de liaison difficiles de javascript. – Kip
De l'intérieur d'une classe, vous êtes généralement mieux d'utiliser la fonction .find.
var child = this.find('.someChildClass');
var child2 = this.find('#someChildId');
Est-il possible de le faire à partir d'une classe?
$ ("#" + champ) .click (this.validate);
"this.validate" est problématique. JavaScript n'a pas de méthodes liées, donc lorsque vous passez cette référence, elle pointe uniquement vers une fonction simple. Lorsqu'il est appelé, 'ceci' ne sera pas correctement défini. Voir ALA pour une discussion assez approfondie du problème de perte de liaison.
Certains cadres fournissent une fonctionnalité de liaison de méthode intégrée; jQuery ne le fait pas, car il a tendance à se concentrer davantage sur les fermetures que sur les objets JavaScript. Dans tous les cas, créer une enveloppe de liaison à l'aide d'une fermeture est assez simple; La réponse d'Andrey est l'approche habituelle pour les utilisateurs de jQuery. La seule chose à surveiller avec les fermetures pour les gestionnaires d'événements (que vous utilisiez jQuery ou non) est que cela a tendance à provoquer des fuites de mémoire dans Internet Explorer. Pour les pages Web simples et de courte durée, cela ne vous intéresse peut-être pas.
- 1. faire défiler l'autre grille automatiquement en utilisant jquery
- 2. tableau en utilisant dans le JQuery
- 3. pagination et le tri en utilisant jquery
- 4. animation en utilisant jquery
- 5. LI en utilisant jQuery
- 6. en utilisant accepter: en jquery
- 7. Faire un lien d'image avec le même href en utilisant jQuery
- 8. comment faire appel css spécifique pour le navigateur spécifique en utilisant jquery
- 9. jQuery - Comment faire pour survoler le code qui a été ajouté en utilisant prepend
- 10. Localisation d'attribut en utilisant jQuery
- 11. AJAX delete - en utilisant jQuery
- 12. jquery popup en utilisant div
- 13. jQuery Masquer en utilisant ID
- 14. En utilisant le plugin scrollTo jQuery avec le plugin Fancy Zomm jQuery
- 15. comment faire liste des fichiers en utilisant le script .bat
- 16. Comment faire pour supprimer le lecteur USB en utilisant C#
- 17. problème en utilisant le plugin Uploadify (JQuery) avec ASP.Net
- 18. jQuery - recevoir le tableau $ _FILES en utilisant $ .post
- 19. Comment changer dynamiquement le contenu d'un iframe en utilisant jquery?
- 20. En utilisant le contexte de « ce » mot-clé avec jQuery
- 21. Rotation d'image en utilisant jQuery mais l'ancrage reste le même
- 22. Défi de programmation en utilisant jQuery
- 23. Rails, en utilisant jQuery sans jrails
- 24. faire un blog en utilisant php
- 25. sélection Tab en utilisant jQuery dans MVC
- 26. traverser les classes en utilisant Jquery
- 27. Supprimer CSS de select en utilisant jQuery
- 28. Désactiver/activer les boutons en utilisant jQuery
- 29. Faire des gifs animés en utilisant R
- 30. Glisser-déposer en utilisant jQuery-ui
Eh bien merci: p réellement pensé que c'était une solution jolie et simple – fmsf
Ne peut-il pas être juste: $ ("li #" + this.id) .fadeOut ("rapide"); –
errr ID devrait être unique ..... si je comprends bien, sinon pourquoi ne pas utiliser $ (this) .fadeOut() – redsquare