2015-04-28 43 views
0

當我這樣做:如何提取從給定的HTML元素定類的所有元素文本與jQuery

var elem = $(".region_box"); 
text = elem.find(".my_text").html(); 

我可以從第一個元素文本深處「ELEM」帶班「my_text」這它發現。

但也有低於ELEM類「actual_text」的許多元素和我想要的文字從所有這些結合起來。我會怎麼做? 我是jQuery的新手,我搜索了很長時間的解決方案,但都沒有爲我工作。也許我正確使用this each()函數。我非常感謝任何幫助。

回答

3

您可以使用使用jquery .map() method這樣的jQuery.each

var text = ''; 

var elms = $(".region_box .my_text").each(function() { 
    text = text + $(this).text(); // use .html() if you actually want the html 
}); 
+0

我認爲你應該連接一個後綴空格'」「' – SaidbakR

1

試一下,

text = $('.region_box').find('.my_text').map(function() { 
    return $(this).text(); 
}).get().join(','); 

由於該網站稱,「由於返回值是一個jQuery對象,其中包含一個數組,對結果調用.get()以處理基本數組是非常常見的。「

+1

雖然代碼被理解的,應該始終有一個附帶的說明。這不需要很長時間,但它是預期的。 – peterh

2

定義一個變量來保存新的字符串,選中所有要提取,鏈中的元素與。每(),並添加文本節點的內容爲元素變量創建持有新串。

Demo

var text = ""; 
$(".region_box .my_text").each(function(){ text += " " + $(this).text(); }); 
相關問題