Extraindo números do atributo pai em jQuery
-
22-09-2019 - |
Pergunta
Ao clicar no "mylink", quero que o link seja substituído pelo número "123", que é extraído da etiqueta pai. Eu acho que não estou fazendo o "..
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>
Solução
Você tem apenas uma correspondência, então precisa usar o 0º jogo (matriz baseada em zero). Além disso, ele retornará a partida inteira; portanto, se você quiser apenas o número, precisará remover o comment-
texto disso.
$(document).ready(function(){
$(".link").click(function(){
var comid = $(this).parents("div.comment")
.attr("class")
.match(/comment-[0-9]+/)[0]
.replace('comment-','');
$(".link").replaceWith(comid);
});
});
Se houver a possibilidade de que nenhuma correspondência ocorra, você desejará atribuir as correspondências a uma variável e apenas faça a (s) substituição (s) se ocorrer uma correspondência (a variável não for anulada).
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow