[英]How can i add objects from data attribute to an array in javascript?Check below for more specification
But I have a problem.但我有一个问题。 In HTML data attributes, I put some data from php and then I access those data in javascript as an object.
在 HTML 数据属性中,我输入了来自 php 的一些数据,然后我以 ZA8CFDE6331BD49EB2ACZ6F8661 的身份访问 javascript 中的这些数据I am writing a shopping cart project using js.
我正在使用 js 编写一个购物车项目。 However for some reasons, I can't put all the objects in an array.
但是由于某些原因,我不能将所有对象放在一个数组中。 Here's my code.
这是我的代码。
let carts = document.querySelectorAll('.addtocart');
for(let i=0;i<carts.length; i++){
let datattr = {
product_name:carts[i].dataset.name,
product_tag:carts[i].dataset.name,
product_price:carts[i].dataset.price,
product_img:carts[i].dataset.img,
incart:0
};
let products = [];
console.log(datattr);
I'm not sure what your goal is but you can get all of the data attributes in an array by selecting the elements, setting up an array for the data attributes and looping through the elements, placing the values in your array.我不确定您的目标是什么,但您可以通过选择元素、为数据属性设置数组并循环遍历元素、将值放入数组中来获取数组中的所有数据属性。
let carts = document.querySelectorAll('.addtocart'); const dataattr = []; carts.forEach(el => { dataattr.push({ product_name: el.dataset.name, product_tag: el.dataset.name, product_price: el.dataset.price, product_img: el.dataset.img, }) }); console.log(dataattr);
.addtocart:before { content: attr(data-name); font-family: sans-serif; }
<div class="addtocart" data-name="apple" data-price="1.00" data-img="apple.jpg"></div> <div class="addtocart" data-name="banana" data-price="0.70" data-img="banana.jpg"></div> <div class="addtocart" data-name="orange" data-price="2.00" data-img="orange.jpg"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.