Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将JSON转换为HTML_Javascript - Fatal编程技术网

Javascript 如何将JSON转换为HTML

Javascript 如何将JSON转换为HTML,javascript,Javascript,我有一个类似下面的JSON { "gists": [ { "name": "Get the title", "id": "beaf8a106e76f4bb82a85ca3a7707a78", "category": "Function" }, { "name": "Get the content", "id": "c6ae

我有一个类似下面的JSON

{
    "gists": [
        {
            "name": "Get the title",
            "id": "beaf8a106e76f4bb82a85ca3a7707a78",
            "category": "Function"
        },
        {
            "name": "Get the content",
            "id": "c6ae7c55aa27f8b6dbeb15f5d72762ec",
            "category": "Uncategorized"
        }
    ]
}
我想要foreach&通过JavaScript获取HTML。如下图所示:

<ul>
    <li>Name: Get The title, ID: beaf8a106e76f4bb82a85ca3a7707a78, Function: Function</li>
    <li>Name: Get The content, ID: c6ae7c55aa27f8b6dbeb15f5d72762ec, Function: Uncategorized</li>
</ul>
  • 名称:获取标题,ID:BEAF8A106E76F4B82A85CA3A7707A78,函数:Function
  • 名称:获取内容,ID:c6ae7c55aa27f8b6dbeb15f5d72762ec,函数:未分类
我试过这样做:

但是,我不知道如何在一行中获取值&我想使用普通JS来实现。我的JSON也将形成外部链接

这可能是一个非常愚蠢的问题。很抱歉:(

您可以使用stringify对象,我使用regex从字符串中删除
{}
)。
let obj={“gists”:[{“name”:“获取标题”,“id”:“beaf8a106e76f4bb82a85ca3a7707a78”,“category”:“Function”},{“name”:“获取内容”,“id”:“c6ae7c55aa27f8b6dbeb15f5d72762ec”,“category”:“Uncategorized”}
让li=document.getElementById('list');
对象gists.forEach(e=>{
设ele=document.createElement('li')
ele.innerHTML=`${JSON.stringify(e).replace(/[{}]/g,,)}`
李.儿童(ele);
})


如果您想在一行中获取项目,可以使用css

你可以在你的
ul
中添加
white space:nowrap;
,在
li
中添加
display:inline
。我正在编辑你添加的小提琴

var数据={
“质量保证”:[{
“问题”:“海洋有多深”,
“答复”:[
“相当深”,
“非常深”,
“一点也不深”]
}, {
“问题”:“天空有多高”,
“答复”:[
“真高”,
“足够高”,
“没有那么高”]
}]
};
var html=“”;
$.each(data.qA,函数(索引,项){
//控制台日志(项目);
html+=“
    ”+item.question; $.each(item.answer,function)(index1,item1){ html+=“
  • (“+index1+”)”+item1+“
  • ”; }); html+=“
”; }); $(“#容器”).append(html);
ul{
空白:nowrap;
}
ulli{
显示:内联
}

使用vanilla JS,您可以使用forEach方法在数组中循环,并相应地构造li元素

var数据={
“GIST”:[
{
“名称”:“获取标题”,
“id”:“BEAF8A106E76F4B82A85CA3A7707A78”,
“类别”:“功能”
},
{
“名称”:“获取内容”,
“id”:“c6ae7c55aa27f8b6dbeb15f5d72762ec”,
“类别”:“未分类”
}
]
};
var container=document.querySelector(“#container”);
var ul=document.createElement('ul');
data.gists.forEach(功能(项){
var li=document.createElement('li');
li.textContent='Name:'+item.Name+',ID:'+item.ID+',函数:'+item.category;
ul.儿童(li);
});
容器。附加子容器(ul);

你能在这里发布你尝试过的东西吗?你是在使用任何库,比如jQuery,还是仅仅是普通的javascript?把你尝试过的东西放在问题中,而不仅仅是链接。链接可能会腐烂,人们不必离开现场来帮助你。你可以使用堆栈片段(
[]
工具栏按钮)…可能重复和“哑巴”问题是好的,不完整的或重复的,不是。