2012-09-30 32 views
7

que tienen la siguiente estructura html:jQuery: reemplazar el texto dentro del enlace?

<div class="event tiny"> 
    <a href="/whatever">Something</a> 
</div> 

Y quiero reemplazar el text de este enlace con "cualquier cosa" ...

Al hacer esto ...

$('.event a').replaceWith("Anything");

... la el texto es reemplazado pero también el enlace se ha ido.

Al hacer esto ...

$('.event a').text().replaceWith("Anything");

... no pasa nada.

Respuesta

19

Me gusta, si el nuevo texto es todo lo mismo.

$('.event a').text("Anything"); 

bucles jQuery lo largo de los elementos a, y reemplaza su contenido con el texto "Anything".

0

También podría cambiar el enlace por href si está relacionado con la URL.

$('a[href="/whatever"]').text("Anything"); 
0

que son capaces de conseguir este resultado las siguientes maneras resultado será el mismo:

HTML

<div class="event tiny"> 
    <a class="html" href="/whatever">Something</a></br> 
    <a class="text" href="/whatever">Something</a></br> 
    <a class="replaceWith" href="/whatever">Something</a> 
</div> 

JS

$('.event a.html').html('Anything-html') 
$('.event a.text').text('Anything-text') 
$('.event a.replaceWith').replaceWith('<a class="replaceWith" href="/whatever">Anything-replaceWith</a>') 
4

Estas sugerencias, para establecer el texto & enlace URL interna dentro de un a href no funcionó para mí (usando jQuery v1.8.3)

Esto es lo que hizo el trabajo sin embargo:

HTML

<a id="hrefAnalysisName" ></a> 

JavaScript

$("a#hrefAnalysisName").attr("href", "/SomePage/ShowAnalysisDetails.aspx"); 
$("a#hrefAnalysisName").text("Show analysis"); 

Espero que esto ayude!

Cuestiones relacionadas