11
votes

3 Réponses :


6
votes

Mélanger les méthodes standard DOM avec jQuery est un peu impair et inutile. Vous pouvez simplement faire quelque chose comme ça à la place: xxx

copie simplement le contenu de la liaison à un nouveau puis remplace le < / code> avec le nouveau .

Références:


0 commentaires

36
votes

Vous pouvez utiliser RemplacerWith code> de JQuery API

$('#myButton').click(function(){
    $("#someDiv a").replaceWith(function(){
        return $("<span>" + $(this).html() + "</span>");
    });
});



2
votes

de la réponse de naveen, vous perdrez la balise href forge>

si vous voulez aussi que href balise, modifiez cela comme suit ... p>

$('#myButton').click(function(){
    $("#someDiv a").replaceWith(function(){
        return $("<span href=\""+$(this).attr('href')+"\">" + $(this).html() + "</span>");
    });
});


2 commentaires

PAL Ceci génère un balisage invalide. SPAN n'a pas de tag HREF


data-href serait un meilleur choix pour le nom d'attribut, qui serait même valide HTML5.