Jquery заменить все строки, начинающиеся с # и добавить ссылку - PullRequest
2 голосов
/ 09 ноября 2011

У меня есть большие блоки или текст на доске объявлений, которая будет содержать строки, начинающиеся с #.Могу ли я использовать jquery, чтобы заменить их ссылкой, содержащей строку?

Например, изменив:

<div id="mydiv">This is my #block of text with #multiple hash strings</div>

на:

<div id="mydiv">This is my <a href="newpage.asp?block">#block</a> of text with <a href="newpage.asp?multiple">#multiple</a> hash strings</div>

Заранее спасибо!

Ответы [ 2 ]

4 голосов
/ 09 ноября 2011

Вы можете использовать следующий код для замены строк:

var string = "#has etc #has ";
string = string.replace(/#(\S+)/g, '<a href="newpage.asp?$1">#$1</a>');
0 голосов
/ 09 ноября 2011

Это сделает работу:

$('*:contains("#")').each(function(){
 if($(this).children().length < 1) 
      $(this).html( 
           $(this).text().replace(
                /#(.*)#/
                ,'<a href=newpage.asp?'+$(this).text()+'>'+$(this).text()+'</a>'
           )  
       ) 
});
...