当我这样做时:
var elem = $(".region_box");
text = elem.find(".my_text").html();
我可以使用它找到的类“my_text”从“elem”下面的第一个元素中获取文本。
但是元素下面的类“actual_text”有很多元素,我想要结合所有这些元素的文本。我该怎么办? 我是jQuery的新手,我长时间寻找解决方案,但他们都没有为我工作。也许我正在错误地使用this each()函数。我非常感谢任何帮助。
答案 0 :(得分:3)
您可以使用jQuery.each
var text = '';
var elms = $(".region_box .my_text").each(function () {
text = text + $(this).text(); // use .html() if you actually want the html
});
答案 1 :(得分:2)
定义一个变量来保存新字符串,选择要提取的所有元素,使用.each()链接该元素,并将该元素的文本节点内容添加到您创建的变量中以保存新字符串。
(Demo)
var text = "";
$(".region_box .my_text").each(function(){ text += " " + $(this).text(); });
答案 2 :(得分:1)
尝试使用jquery .map() method这样的内容,
text = $('.region_box').find('.my_text').map(function() {
return $(this).text();
}).get().join(',');
正如网站所说,“由于返回值是一个包含数组的jQuery对象,因此在结果上调用.get()以使用基本数组是很常见的。”