我沒有發現,如何在jquery中為一個關鍵陣列元素創建一個具有動態值的json訊息。
我試圖建立一個像這樣的json訊息:
{}。
"line": {
"name": "Test",
"images": []。
{>
"order": "1",
"link": "https://google.com/1.jpg",
"name": "1.jpg"
},
{>
"order": "2",
"link": "https://google.com/2.jpg",
"name": "2.jpg"
}
]
}
}
我未能將圖片附在郵件中。
jsonObbj = {};
line = {};
line ["name"] = $("#name").val()。
counter = 1;
$("div.carousel_image > img").each(function() {
影像 = {};
影像 ["order"] =計數器。
影像 ["name"] = $(this).attr('src') 。
行["images"].push(image); //如何將此圖片編輯到image陣列中。
counter ;
});
//如何將這一行添加到陣列中。
感謝您的幫助!
uj5u.com熱心網友回復:
你需要將line.images初始化為一個空陣列。
jsonObbj = {};
line = {};
line ["name"] = $("#name").val()。
line["images"] = []; //添加這一行。
counter = 1;
$("div.carousel_image > img").each(function() {
影像 = {};
影像 ["order"] =計數器。
影像 ["name"] = $(this).attr('src') 。
行["images"].push(image); //如何將此圖片編輯到image陣列中。
counter ;
});
注意,一般來說,當你的物件鍵是普通字串時,你要使用點符號。line.images
JSFiddle。https://jsfiddle.net/to4xhewu/
uj5u.com熱心網友回復:
在你開始向它推送之前,你需要將line.images初始化為一個陣列。你還應該確保你用const、let或var正確宣告你的變數,否則它們將被隱含為global。
試試這個簡單的,物件字面的初始化器替代方案
。const jsonObbj = {
line: {
name: $("#name").val()。
images: $("div.carousel_image > img") 。 map((i, img) =>({
order: i 1,
name: img.getAttribute("src") 。
link: img.src。
}).get()
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/306714.html
標籤:
上一篇:在我對按鈕使用flex顯示后,帶有懸停選項的按鈕不再作業了。
下一篇:<p><strong>問題背景</strong></p> <p>我試圖為每個具有<code>.param-value</c
