2012-01-09 7 views
0

J'ai un href dynamique qui n'a pas de classe ni d'identifiant et je dois accomplir 2 choses. D'abord je dois être capable d'identifier que le href est admissible.Jquery: Ajoute href à un href dynamique

Quelque chose le long des lignes de si

$("a[href*='somestring']") 

faire ceci:

capture tag href et toute précèder à elle.

Est-ce possible?

+0

Il est clair ce que vous entendez par « identifier que le href est admissible. » – Blazemonger

Répondre

5

Vous pouvez utiliser la méthode attr() avec un argument de fonction pour modifier l'attribut au lieu de le remplacer:

$('a').attr('href',function(i,v) { // you should use a more specific selector 
    return "http://www.google.com?search=" + v; 
}); 

http://jsfiddle.net/mblase75/fXUNE/

+0

Le vôtre est meilleur que le mien, je n'ai jamais su que vous pourriez faire ceci. TIL! – kamranicus

+0

Cela fonctionne pour la deuxième partie, mais d'abord je dois être en mesure de faire correspondre le href. Alors disons que je veux seulement que ça marche avec les hrefs qui ont la chaîne "somestring" dedans (http://www.blahblah.com/somestring/help). J'imagine qu'une instruction if/else fonctionnerait? – Gavin

+0

Utilisez simplement un sélecteur plus spécifique. Vous étiez déjà sur la bonne voie avec [l'attribut contient le sélecteur] (http://api.jquery.com/attribute-contains-selector/). – Blazemonger