javascript - 如何显示动态生成
问题描述
解决方案
如您所见,如果没有 jsn 对象来重新创建此示例,我将在下面提供一个静态示例...
使列表项的父元素成为弹性容器。这会将块级项目排成一行。为了说明这一点,我在 UL 中放置了静态列表项,并使用 CSS 定位它display: flex;
。
#divid #comp_tag {
display: flex;
}
以下是一个非常简单的代码片段,它重新创建一个对象并将对象项display:flex
放在父 UL 元素上的一行中。
希望这可以帮助...
let obj = {
0: {
'name': 'Cajun Delight',
'ingredients': {
'type': {
'salt': '1 teaspoon',
'garlic': '2 cloves',
'pepper': '1 pinch'
}
}
},
1: {
'name': 'Midwest Bland',
'ingredients': {
'type': {
'salt': '1 teaspoon',
'garlic': '2 cloves',
'pepper': '1 pinch'
}
}
},
2: {
'name': 'Asian Stir Fry',
'ingredients': {
'type': {
'salt': '1 teaspoon',
'garlic': '3 cloves',
'pepper': '1 pinch',
'soy_sauce': '1/4 cup'
}
}
}
}
function displayInfo() {
let compTag = document.getElementById("comp_tag");
for (let values in obj) {
let li = document.createElement("LI");
li.textContent = obj[values].name;
compTag.append(li);
compTag.style.justifyContent = "space-around";
if (obj[values].ingredients.type) {
for (let type in obj[values].ingredients.type) {
let subUl = document.createElement("UL");
let subLi = document.createElement("LI");
li.append(subUl);
subUl.append(subLi);
subLi.textContent = `${obj[values].ingredients.type[type]}`;
}
}
}
}
displayInfo();
#divid #comp_tag {
display: flex;
list-style-type: none;
}
<div class="col-md text-right" id="divid">
<p class="text-uppercase"><b>ingredients</b></p>
<ul id="comp_tag">
</ul>
</div>
推荐阅读
- c++ - 越界访问数组是否被视为违反类型安全或违反内存安全?
- c# - 如何检索我的 BITS 作业的状态?
- regex - Apache URL 重写 UUID v1
- python - 如何查看查询集的所有属性?
- json - 使用自定义小部件覆盖 django JSONField
- css - 围绕其中心旋转 svg 路径(不是 svg 的中心)
- sql-server - 如何在行组和列组上使用嵌套聚合?
- flask - 如何编辑 WTForms FieldList 以删除列表中间的值
- python - Pyspark - 随着数据框变大而中断
- heroku - 手动输入路线时部署在 Heroku 上的 Angular 应用程序出现 404 错误