Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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 将元素的值推送到对象数组_Javascript_Html_Algorithm - Fatal编程技术网

Javascript 将元素的值推送到对象数组

Javascript 将元素的值推送到对象数组,javascript,html,algorithm,Javascript,Html,Algorithm,我试图将一个元素的值推送到一个对象数组中,但我所做的只是返回所有其他元素的第一个元素内部Html。我正在使用的代码已附加。事实上,每个元素我都应该得到。所有参赛者都是这样。然后,我应该能够推到上面的空对象,以保持所有参赛者的分数超出固定值。像display object={competitor_one:5,…} var total=document.querySelector(“.Fixed_number”); var minusBtn=document.queryselectoral(“#减

我试图将一个元素的值推送到一个对象数组中,但我所做的只是返回所有其他元素的第一个元素内部Html。我正在使用的代码已附加。事实上,每个元素我都应该得到。所有参赛者都是这样。然后,我应该能够推到上面的空对象,以保持所有参赛者的分数超出固定值。像display object={competitor_one:5,…}

var total=document.querySelector(“.Fixed_number”);
var minusBtn=document.queryselectoral(“#减”);
var plusBtn=document.queryselectoral(“#plus”);
var GetTotal=document.getElementById('get_all');
var value1=document.getElementById('competitor_One');
var value2=document.getElementById('competitor_Two');
var value3=document.getElementById('competitor_Three');
var value4=document.getElementById('competitor_-Four');
附加费(功能(项目){
item.onclick=函数(){
if(parseInt(total.innerText)>0){
item.nextElementSibling.innerText=parseInt(item.nextElementSibling.innerText)+1;
total.innerText=parseInt(total.innerText)-1;
if(parseInt(total.innerText)==0){
const countries=document.queryselectoral(“.country”);
常量结果=[];
for(const国家/地区){
设resEl={};
[…country.querySelectorAll('span[class^=“Competitor-”])].forEach((span)=>resEl[span.className.split('-'))[1]]=value1.innerHTML)
结果:推(resEl);
}
console.log(结果)
}
}
};
});
联邦储备账户(功能(项目){
item.onclick=函数(){
if(parseInt(item.previousElementSibling.innerText)>0){
item.previousElementSibling.innerText=parseInt(item.previousElementSibling.innerText)-1;
total.innerText=parseInt(total.innerText)+1;
}
};
});
/*我的Console.log(result)输出假设如下
0:{1:“3”}
1:{2:“2”}
2:{三:“2”}
3:{四:“6”}
长度:4
但它只对其他对象使用第一个值,所以它返回类似
0:{1:“9”}
1:{2:“9”}
2:{三:“9”}
3:{四:“9”}
长度:4
*/

10
    一号选手 + 0 - 二号选手 + 0 - 三号选手 + 0 - 四号选手 + 0 -
得到总数
您的错误在这一行代码中
[…country.querySelectorAll('span[class^=“competitor-”)]].forEach((span)=>resEl[span.className.split('-'))[1]]=value1.innerHTML)


您可以为forEach循环中的每个元素将
value1.innerHTML
添加到结果数组中。

[…country.queryselectoral('span[class^=“competitor-”)]]].forEach((span)=>resEl[span.className.split('-')[1]=value1.innerHTML)

您硬编码了
value1
,它应该是动态的,如:


[…country.querySelectorAll('span[class^=“competitor-”)].forEach((span)=>resEl[span.className.split('-')[1]=document.getElementById(span.id).innerHTML)

这实际上是我的问题。我不知道如何得到所有的值。而不是value1.innerHtml@Karlan