Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/406.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用jQuery将Div值的行转换为数组_Javascript_Jquery_Associative Array - Fatal编程技术网

Javascript 使用jQuery将Div值的行转换为数组

Javascript 使用jQuery将Div值的行转换为数组,javascript,jquery,associative-array,Javascript,Jquery,Associative Array,例如: 我有一个可变数量的行,每个行有3个div,类如下: <div class="row> <div class='date'>1/2/2018</div> <div class='event'>concert</div> <div class='act'>Pink Floyd</div> </div> <div class="row> <div class='date'&

例如: 我有一个可变数量的行,每个行有3个div,类如下:

<div class="row> 
<div class='date'>1/2/2018</div> 
<div class='event'>concert</div>
<div class='act'>Pink Floyd</div>
</div>

<div class="row> 
<div class='date'>12/5/2017</div> 
<div class='event'>dj set</div>
<div class='act'>Moby</div>
</div>

<div class="row> 
<div class='date'>5/5/2018</div> 
<div class='event'>movie</div>
<div class='act'>Ant-Man</div>
</div>

12/5/2017 
dj集
莫比

要选择包含类行的所有div,请使用以下命令

  var rows=$('div.row');
要循环使用它,请使用

var array=[];
for(var i=0;i <rows.length;i++){
$.each(rows,function(){
var children=this.children('div');
$.each(children,function(){
var index=this.attr('class');
var value=this.text();
array[i][index]=value;
});
});
}
var数组=[];

对于(var i=0;i您可以使用
map
.row
div中循环。使用
reduce
将内部div分组为js对象

var result=$('.row').map(函数(){
返回$(this).find('div').toArray().reduce(函数(c,v){
c[$(v.attr('class')]=$(v.text();
返回c;
}, {});
}).get();
console.log(结果);

1/2/2018
音乐会
平克弗洛伊德
12/5/2017
dj集
莫比
5/5/2018
电影
蚂蚁人

Array.from($('div'))你能告诉我更多关于它是如何工作的吗。它不是也会用div类收集div吗?你说
我如何使用jQuery将它们收集到一个数组中
-就是这样…如果你需要特定的输出格式,请在你的问题中包括它,以及你为解决自己的问题所做的任何实际尝试在这里,这种方法是有效的。有没有一种方法可以让它成为一个关联数组?有没有一种简单的方法可以让它们以逗号分隔的形式输出?这很好地得到了以下几点:虽然我不清楚如何在php中循环一个列表。有没有一种方法可以让它成为一个关联数组?我在这里设置了它,但我不确定是什么我应该把代码放在刹车板上,怎么放