Javascript 从HTML元素生成JSON数据
我是新手,所以我请求帮助。在我看来,这应该足够简单。我有一段如下的HTML代码:Javascript 从HTML元素生成JSON数据,javascript,html,jquery,arrays,json,Javascript,Html,Jquery,Arrays,Json,我是新手,所以我请求帮助。在我看来,这应该足够简单。我有一段如下的HTML代码: <div class="shopping-cart-list"> <div> <div class="toReceipt" style="display: none;"> <div class="toReceiptName">Posi
<div class="shopping-cart-list">
<div>
<div class="toReceipt" style="display: none;">
<div class="toReceiptName">Position 1</div>
<div class="toReceiptPrice">200</div>
<div class="toReceiptQuantity">2</div>
<div class="toReceiptAmount">400</div>
</div>
</div>
<div>
<div class="toReceipt" style="display: none;">
<div class="toReceiptName">Position 2</div>
<div class="toReceiptPrice">100</div>
<div class="toReceiptQuantity">1</div>
<div class="toReceiptAmount">100</div>
</div>
</div>
<div>
<div class="toReceipt" style="display: none;">
<div class="toReceiptName">Position 3</div>
<div class="toReceiptPrice">20</div>
<div class="toReceiptQuantity">2</div>
<div class="toReceiptAmount">40</div>
</div>
</div>
</div>
这是我的解决方案:
函数go(){
让结果={
“项目”:[…],
“数额”:{}
};
设totalAmount=0;
$(“div.shopping-cart-list div.toReceipt”)。每个((索引,项目)=>{
result.Item.push({
“标签”:$(项).find(“div.toReceiptName”).text(),
“价格”:编号($(项目).find(“div.toReceiptPrice”).text(),
“数量”:编号($(项目).find(“div.toReceiptQuantity”).text(),
“金额”:数字($(项目).find(“div.toReceiptAmount”).text()
})
totalAmount+=数字($(项).find(“div.toReceiptAmount”).text();
});
结果:金额={
“电子”:总金额
};
控制台日志(结果);
}
位置1
200
2.
400
位置2
100
1.
100
位置3
20
2.
40
去
400+100+40=1300?逻辑是什么?
var receipt = {
"Items": [{
"label": "Position 1",
"price": 200.00,
"quantity": 2.00,
"amount": 400.00,
},
{
"label": "Position 2",
"price": 100.00,
"quantity": 1.00,
"amount": 100.00,
},
{
"label": "Position 3",
"price": 20.00,
"quantity": 2.00,
"amount": 40.00,
},
],
"amounts": {
"electronic": 1300.00, // Calculate amount of all positions
}
}