Numéros de l'extraction attribut parent dans jQuery
-
22-09-2019 - |
Question
En cliquant sur le « MyLink » Je veux que le lien soit remplacé par le nombre « 123 », qui est extrait de balise parent. Je pense que je ne fais pas le « .match (.... » droit.
jQuery:
$(document).ready(function(){
$(".link").click(function(){
var comid = $(this).parents("div.comment").attr("class").match(/comment-([0-9]+)/)[1];
$(".link").replaceWith(comid);
});
});
html:
<div class="comment comment-123 ct">
<div class="link">mylink</div>
</div>
La solution
Vous avez seulement un correspondant de sorte que vous devez utiliser le match 0e (tableau de base zéro). , Il retournera également tout le match, donc si vous voulez juste le numéro que vous devrez supprimer le texte comment-
de celui-ci.
$(document).ready(function(){
$(".link").click(function(){
var comid = $(this).parents("div.comment")
.attr("class")
.match(/comment-[0-9]+/)[0]
.replace('comment-','');
$(".link").replaceWith(comid);
});
});
S'il y a une possibilité qu'aucune correspondance se produira, alors vous voulez attribuer les matchs à une variable et seulement faire le remplacement (s) si une correspondance se produit (la variable est non nulle).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow