2010-01-28 154 views
0

我有存儲在一個變量的HTML文本字符串之間的文本:解析字符串的div

var msg = '<div class="title">Alert</div><div class="message">New user just joined</div>' 

我想知道我怎麼可以過濾掉從jQuery的上述變量「剛加入的新用戶」/Javascript,以便我可以將文檔標題設置爲僅消息。

謝謝。

回答

5

像這樣:

document.title = $(msg).filter("div.message").text(); 

注意,如果在一個元素被包裹的消息的變化,你需要用children更換filter

編輯:它看起來像你想要的div嵌套在其他元素(S)。
如果是這樣,你可以像這樣做:

document.title = $("div.message", msg).text(); 

說明:$('<div>a</div><div>b</div>')創建一個jQuery對象持有兩種不同的<div>元素。你可以通過調用filter函數找到你正在尋找的函數,該函數可以找到你調用它的jQuery對象中的mathcing元素。 (不他們的孩子)

$('<p><div>a</div><div>b</div><p>')創建jQuery對象保持單個<p>元件,並且<p>元素包含兩個<div>子元素。調用$('selector', 'html')將查找HTML中與選擇器匹配的所有元素的後代。 (但它不會返回根元素(S))

+0

請e把這點放到你的問題中。 – SLaks 2010-01-28 01:52:08

+0

我的歉意。我用過濾器取代了它,它完美地工作。謝謝。 – ensnare 2010-01-28 01:53:31

0

這是一個黑客,不是很乾淨,但它應該工作:

  1. 添加一個div節點,它的HTML設爲您的短信,
  2. 得到所添加的元素的文本,並將其存儲在變量
  3. 破壞節點
  4. 在步驟中設置的標題與變量的內容2