2010-05-19 6 views
8

J'ai besoin d'un moyen de remplacer le texte contenu dans <a href="this text" en utilisant jQuery, je veux remplacer ce que le texte est détenu entre guillemets à '#'.jQuery - Remplacer le contenu de href = "" par '#'

Des suggestions?

+0

Essayez la documentation jQuery: http://api.jquery.com/attr/ –

+0

en double - http: //stackoverflow.com/questions/179713/how-to-change-the-href-for-a-hyperlink-using-jquery – user113716

Répondre

15
$('a').attr('href', '#'); 
+6

Également remarquable: '$ ('a'). attr ('href')' en fait * renvoie * tout ce qui se trouve dans l'attribut 'href'. jQuery a une API géniale, aussi: http://api.jquery.com – dclowd9901

+6

Sachez que cet exemple de code remplacera la valeur 'href' de ** tous ** les liens sur votre page, ce qui n'est peut-être pas ce que le PO veut faire. Pour le réduire à un seul élément, utilisez un sélecteur d'ID à la place - '$ ('# myLink'). Attr ('href', '#');'. –

7

...

$(function(){ 
$('a').attr('href', '#'); 
}); 

Le gestionnaire ready doit prendre soin de changer le href de vos liens lorsque la page de charges.

Si vous avez lien (s) avec un certain jeu de classe ou id à eux, vous pouvez simplement faire:

$(function(){ 
$('a.link_class').attr('href', '#'); 
// $('#some_id').attr('href', '#'); // for id 
}); 

Si vous voulez faire avec quelques clics de souris bouton, etc, vous pouvez faire comme:

$('#button_id').click(function(){ 
    $('a').attr('href', '#'); 
}); 
4

Ce serait la méthode la plus simple:

$('a').attr('href', '#'); 

Toutefois, si vous avez plusieurs balises sur votre page, vous allez probablement Vous voulez un identifiant afin que vous puissiez choisir un spécifique à remplacer.

<a id='replaceme' href='...'></a> 

S'il n'y a qu'un sous-ensemble que vous voulez réécrire, assignez-leur une classe.

<a class='replaceme2' href='...'></a> 
<a class='replaceme2' href='...'></a> 

Ensuite, vous pouvez faire ce qui suit:

$('#replaceme').attr('href', '#'); 
//This will only replace the href for a single link 

Ou

$('.replaceme2').attr('href', '#'); 
//This will replace the href for all links with the replaceme2 class 
+1

"Cependant, si vous avez plusieurs tags sur votre page, vous aurez probablement besoin d'un identifiant pour que vous puissiez le sélectionner." Les ID sont supposés être uniques. Utilisez 'class'es à la place. –

+0

C'est exactement ce que je voulais dire et pourquoi j'ai donné l'exemple supplémentaire de l'utilisation des classes. J'ai mis à jour le texte de la réponse pour pouvoir lire plus clairement. –

Questions connexes