Javascript HTTP请求,对象/数组分解
我有一个api上的对象数组Javascript HTTP请求,对象/数组分解,javascript,arrays,rest,api,object,Javascript,Arrays,Rest,Api,Object,我有一个api上的对象数组 { "ErrorCode": 0, "ErrorMessage": null, "Warehouses": [ { "Code": null, "Name": "Depozit Fabrica", "WarehouseID": "cb4fbab4-b8db-4807-a2b0-fad710f1fd9e" }, {
{
"ErrorCode": 0,
"ErrorMessage": null,
"Warehouses": [
{
"Code": null,
"Name": "Depozit Fabrica",
"WarehouseID": "cb4fbab4-b8db-4807-a2b0-fad710f1fd9e"
},
{
"Code": "3",
"Name": "Depozit Magazin",
"WarehouseID": "dfa08a15-e3a0-4d43-8af6-c24a9d43101c"
},
{
"Code": null,
"Name": "Depozit Ograda",
"WarehouseID": "0dc8318d-305c-4e09-a31c-aa6fd44bf2ca"
}
]
}
我的DOM中显示了“仓库”的“名称”。这些“名称”具有不同的ID。所以,我想做的是,每次我点击某个“Name”对象,我都会得到它的ID,然后用这个ID调用另一个restapi,例如,它显示了一个分类列表
async function getWarehouse() {
const response = await fetch(url);
const data = await response.json();
const { Warehouses } = data;
for (var i = 0; i < Warehouses.length; i++) {
const dataItem = Warehouses[i].Name;
console.log(dataItem);
document.getElementById("depList").innerHTML +=
`
<ul>
<li class="data-item">${dataItem}</li>
</ul>
`
...
异步函数getWarehouse(){
const response=等待获取(url);
const data=wait response.json();
const{Warehouses}=数据;
对于(变量i=0;i<0.length;i++){
const dataItem=仓库[i]。名称;
console.log(数据项);
document.getElementById(“depList”).innerHTML+=
`
- ${dataItem}
您可以将该值指定为html属性,例如
数据代码
,并在单击事件处理程序中访问它
const数据={
“错误代码”:0,
“ErrorMessage”:空,
“仓库”:[{
“代码”:空,
“姓名”:“Depozit Fabrica”,
“仓库ID”:“cb4fbab4-b8db-4807-a2b0-fad710f1fd9e”
},
{
“代码”:“3”,
“名称”:“Depozit Magazin”,
“仓库ID”:“dfa08a15-e3a0-4d43-8af6-c24a9d43101c”
},
{
“代码”:空,
“姓名”:“Depozit Ograda”,
“仓库ID”:“0dc8318d-305c-4e09-a31c-aa6fd44bf2ca”
}
]
};
函数getWarehouse(){
常数{
仓库
}=数据;
对于(变量i=0;i<0.length;i++){
const dataItem=仓库[i]。名称;
document.getElementById(“depList”).innerHTML+=
`
- ${dataItem}
`;
让dataItems=document.querySelectorAll(“.data item”);
dataItems.forEach((di)=>{
di.addEventListener('单击',(事件)=>{
console.log(event.target.getAttribute('data-code');
})
})
}
}
getWarehouse();
问题是什么?Aditya Bhave,我如何使用event.target.getAttribute('data-code')作为下一个HTTP请求的自定义参数?该参数应该在花括号内{}。只需将其放在JSON中。添加更多详细信息,如请求类型、URL、预期输入等。如果您无法解决此问题。这是一个GET请求,我想在单击某个仓库时获取分类列表,我成功地做到了。感谢您!太好了!!很高兴提供帮助