Jquery text()同一类中的多个元素
我正在尝试对页面上的多个(未知数量)元素使用.text() 考虑:Jquery text()同一类中的多个元素,jquery,text,each,Jquery,Text,Each,我正在尝试对页面上的多个(未知数量)元素使用.text() 考虑: <ul> <li class="myClass">element1</li> <li class="myClass">element2</li> <li class="myClass">element3</li> </ul> 将返回第一个元素的文本“element1” 我环顾四周时发现了以下情况: $('.m
<ul>
<li class="myClass">element1</li>
<li class="myClass">element2</li>
<li class="myClass">element3</li>
</ul>
将返回第一个元素的文本“element1”
我环顾四周时发现了以下情况:
$('.myClass').each(function(index, obj)
{
// do something
});
但是,此查询只返回每个完整元素,如:
<li class="myClass">element1</li>
<li class="myClass">element2</li>
<li class="myClass">element3</li>
元素1
元素2
元素3
我需要返回所有元素的文本,例如:
“元素1”
“元素2”
“元素3”
谢谢 您可以使用map()
检索一组元素的特定属性并将它们放置在数组中:
var textValues = $('.myClass').map(function() {
return $(this).text();
}).get();
从那里,您可以根据需要使用数组来创建字符串,例如,使用join()
:
var textValues=$('.myClass').map(函数(){
返回$(this.text();
}).get();
console.log(textValues.join(','));//='元素1、元素2、元素3'
- 元素1
- 元素2
- 元素3
利用美元(这)
var x=[];
$('.myClass')。每个(函数(索引,obj)
{
x、 推送($(this.text());
});
控制台日志(x)代码>
- 元素1
- 元素2
- 元素3
只需将内的文本浓缩。每个。这是一个
下面是修改后的jQuery:
$(function() {
var names = '';
$('.myClass').each(function(index, obj) {
names += $(this).text() +',';
});
alert(names);
});
只需将结果放入。每个都可以尝试结果+=“”+$(obj).text()
;或$(“ul”).text()代码>@Myles没问题,很高兴能帮上忙。我也找到了和你一样的代码var textValues=$(“li”).map(函数(){return$(this.text();}).get().join(,”代码>使用这个作为我的答案,因为数组使这更容易。谢谢你,彼得!
var string = null;
$('.myClass').each(function(index, obj){
// do something
string += $(this).text();
});
$(function() {
var names = '';
$('.myClass').each(function(index, obj) {
names += $(this).text() +',';
});
alert(names);
});