ne peut pas sembler obtenir celui-ci pour travailler ...
J'ai une page qui cache certains liens. Lorsque le DOM est chargé, j'utilise JQuery pour basculer certains de ces éléments. Ceci est motivé par l'utilisation d'un attribut de données, comme: p> alors, j'ai le code: p> ce qui précède Tous les œuvres comme prévu. Le problème est que j'essaie d'éliminer les données-usr de la classe .d_btn une fois que l'instruction IF est évaluée. J'ai essayé ce qui suit et que rien ne fonctionne (c'est-à-dire après chargé de la page, la source affiche toujours l'attribut Data-usr: P> $(this).removeAttr("data-usr");
$(this).removeData("usr");
4 Réponses :
Pourquoi ne définissez-vous pas la valeur sur une valeur aléatoire ou une variable vide si RemoVeattr ne fonctionne pas.
Mais lorsque la Data-usr est vide, je suppose que cela ne va pas frapper la boucle si la boucle ... Donc, le statut du bouton pour ce particulier ne sera pas basculé .. Pouvez-vous construire un violon si ce que je pense est faux ??
C'est exactement ce que je pensais mais ça ne fonctionne pas comme ça. Non défini créé un violon dans sa réponse ci-dessus: jsfiddle.net/vvbfg
Pouvez-vous mettre à jour votre code avec toute la logique qui se passe avec la demande AJAX.
Changer le DOM n'affecte pas la source. Il affecte le DOM, que vous pouvez afficher avec les outils de l'inspecteur / développeur. Clic droit => View Source vous donnera la source d'origine de la page, pas la source actuelle réelle modifiée par JavaScript. P>
Merci - c'est vraiment utile! J'ai mis à jour mon message avec des informations supplémentaires.
Définissez-le sur une chaîne vierge:
$(this).attr("data-usr", "");
Comme d'autres ont déclaré. La vérification de la source ne montrera que la source d'origine non éditée pour la page Web. Ce que vous devez faire est de vérifier le DOM à l'aide d'outils de développeur. P>
Je viens de vérifier tout dans l'inspecteur de chrome sur jsfiddle ici et l'attribut est définitivement supprimé. comme les données. P>
Merci - alors peut-être qu'il y a un problème avec mon raisonnement? Malheureusement, je ne sais pas comment vérifier le DOM (essayé sur Firebug et ne pouvait rien faire de la tête ou de la queue de rien) ...
Dans Firefox, vous devriez être capable de cliquer avec le bouton droit de la souris sur l'élément de la page et de sélectionner «Inspecter l'élément avec Firebug». Vous verrez ensuite le balisage de la page localisée à l'élément que vous avez sélectionné.
Nice - ^ Merci copain ^ Je viens de vérifier et vous avez raison - l'attribut de données est supprimé. Ce qui confirme ma conclusion selon laquelle c'était un problème avec mon raisonnement. La question est maintenant de savoir pourquoi, lorsqu'un nouvel élément est ajouté via AJAX et que j'appelle la même fonction, est la boucle exécutée sur tous les articles et tout est basculé?
Hmmm ... Ajoutez-vous une seule instance ou écrasez-vous tout le HTML? Pourriez-vous poster un échantillon plus complet de votre code dans un violon?
Merci encore - Malheureusement, il n'y a pas beaucoup plus à poster ... lorsque la réponse Ajax est renvoyée, le même partial (modèle) est utilisé comme lorsque la page est chargée à l'origine. Je pensais qu'en supprimant les éléments de données après l'exécution de l'instruction IF, lors de l'appel de la fonction Afficher les éléments nouvellement ajoutés, il sauterait sur les éléments d'origine. Mais, malheureusement, cela ne semble pas être le cas. Pour une raison quelconque, il semble que les données soient toujours liées à l'élément DOM (même si nous ne pouvons pas la voir avec inspection.) Je suis perplexe.