2011-11-08 40 views
2

我在留言板上有一個大塊或文本,其中包含以#開頭的字符串。我可以使用jquery替換這些包含字符串的鏈接嗎?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> 

提前感謝!

回答

4

你可以使用下面的代碼來替換字符串:

var string = "#has etC#has "; 
string = string.replace(/#(\S+)/g, '<a href="newpage.asp?$1">#$1</a>'); 
0

這將做的工作:

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

歡迎的StackOverflow!在發佈之前測試你的解決方案總是一個好主意,可能在http://jsfiddle.net上,以確保它們實際上按預期工作。 – Blazemonger

+1

使用'text()'和'html()'替換內容時應該是後果。如果html包含'>腳本<',替換後的結果將爲'

  • 11. 查找以 - 開頭並以換行符結尾的字符串
  • 12. 替換字符串開始處以外的所有子字符串實例
  • 13. 用特定字符替換所有子字符串開頭和結尾
  • 14. javascript/jQuery找到所有字符串並替換 - 但是
  • 15. vim:搜索並替換以特定字符串開頭的一行字
  • 16. 替換以特定字符串開頭的某些行的值
  • 17. 如何替換所有文字鏈接並添加<a href> tag using php?
  • 18. Groovy字符串替換鏈接
  • 19. 替換所有以數字python開頭的東西
  • 20. 篩選器所有以「rajesh」開始,直到「Talasu」並用新單詞替換的字符串的字符串
  • 21. preg替換所有鏈接
  • 22. 查找以特定字符串開頭的行並將其替換爲新行
  • 23. 如果字符串以字符開頭或結尾,則替換字符
  • 24. 替換所有出現的字符串
  • 25. 替換所有的字符串出現
  • 26. 用string2替換字符串只在行上以'// FIXME'開頭
  • 27. 搜索並替換超鏈接的字符串
  • 28. vi替換字符串,並添加一些文字的新行
  • 29. 用jQuery替換字符串中的鏈接文本
  • 30. 基本的JQuery:替換鏈接字符串與另一個