2010-05-29 4 views

Répondre

1

Probablement suite est plus propre en ce qui concerne de jQuery functionallity:

$('a').html(function(i,html){ return html.replace(/\((.*?)\)/, "<span>$1</span>")}) 
+0

Ce sera supprimer tous les A-tags! – Vasta

3

Je pense que vous devriez utiliser regexp norme JS:

str.replace(/\(/g, '<span>').replace(/\)/, '</span>')

+0

Vous devriez mieux utiliser une expression rationnelle pour tout cela pour éviter d'avoir une seule inégalée '</span >' s'il y a des choses comme un smiley. Et vous pourriez vouloir restreindre les choses à l'intérieur des parenthèses à ce qui peut se produire dans votre application (au lieu de simplement '. *) Pour éviter les fausses correspondances. – Marian

+0

Merci maintenant ça fonctionne bien :) $ ("# primary-links a"). Text(). Replace (/ \\ (/ g, '') .réplace (/ \\)/g, ' '); – Vasta

1

Don't use jQuery.

myAtag.innerHTML = myAtag.innerHTML.replace(/\(/,'<span>').replace(/\)/,'</span>'); 

Mieux encore, la sortie à partir du serveur comme celui en premier lieu.

+0

Je pense que ce lien est plus approprié pour les questions où il * pourrait * être une alternative jQuery. À ma connaissance, il n'y a pas de substitut jQuery bizarre pour les regexes JS (du moins, pas encore). – karim79

0

Ma pensée pour l'utilisation de jquery;

j'ai ajouté une carte d'identité à l'étiquette Acor pour le rendre plus simple à la référence:

<a id='target' href="#">Evente (0)</a> 

Et le code JQuery suivant

$('#target').html($('#target').html().replace("(","<span>").replace(")","</span")); 

similaires à la fois des réponses ci-dessus, mais avec JQuery

0

Merci SHiNKiROU maintenant exécute goooood;)

$("#content-tabs a").text().replace(/\(/g, '<span>').replace(/\)/g, '</span>'); 
Questions connexes