Je travaille avec la table bootstrap à l'intérieur du dialogue jquery et j'ai des problèmes avec la fermeture du dialogue et la libération de la mémoire. Permettez-moi de montrer sur le code de démonstration:les boutons ne fonctionnent pas correctement dans le contenu du dialogue jq (deux façons de fermer le dialogue jquery avec la table bootstrap)?
Méthode 1:jsFIDDLE Voici le code avec deux boutons à l'intérieur du contenu de dialogue que j'utiliser pour enregistrer ou annuler. Ils sont codés avec $.click()
(pas par le dialogue). Pour voir le problème 4 étapes en jachère:
- Cliquez sur la première case et accepter la date
- Faites la même chose pour la deuxième case
- Décocher les deux (champ de date est vide dans les deux lignes)
- Vérifiez à nouveau un case à cocher et accepter la date
Vous remarquerez maintenant que la date a été ajoutée dans les deux champs de chaque ligne même si vous n'avez pas cliqué sur la seconde. Quand je joue plus comme ça, je peux même décocher les deux cases en un clic.
Méthode 2:jsFIDDLE La même idée, mais j'utiliser les boutons définis dans le dialogue jquery et si vous faites les mêmes étapes d'en haut, vous ne remarquerez pas le problème - il fonctionne très bien.
Question: Je dois utiliser la première méthode pour mon propre but, mais que faire pour résoudre ce problème de mémoire?
qu'est-ce que cela a à voir avec une fuite de mémoire? – dandavis
Je ne suis pas anglais, je peux utiliser une mauvaise terminologie, désolé pour mon anglais. Je veux juste dire qu'il mémorise en quelque sorte les dernières étapes (index de ligne). Peut-être qu'il y a quelque chose avec la destruction du dialogue, pourquoi la deuxième méthode fonctionne bien? – soonic
je pense '$ ('# submitBtn'). Click' est appliqué plusieurs fois parce qu'un console.log() à l'intérieur se déclenche une fois la première fois, et plusieurs fois après cela ... – dandavis