Javascript 解析json并在html中输出
我想解析一个json文件,并使用javascript以html格式输出 这是我的json文件Javascript 解析json并在html中输出,javascript,jquery,json,Javascript,Jquery,Json,我想解析一个json文件,并使用javascript以html格式输出 这是我的json文件 {"quiz":[ { "quizName":"Quiz 1", "question": [ { "text": "1+1?", "choiceA": "1", "choiceB": "2", } ]
{"quiz":[
{
"quizName":"Quiz 1",
"question": [
{
"text": "1+1?",
"choiceA": "1",
"choiceB": "2",
}
]
},
{
"quizName":"Quiz 2",
"question": [
{
"text": "2+2?",
"choiceA": "3",
"choiceA": "4",
}
]
}
]}
这是我的html
<body>
<div id="placeholder"></div>
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script>
$.getJSON('data.json', function(data) {
var output="<ul>";
for (var i in data.quiz) {
output+="<li>" + data.quiz[i].quizName+"</li>";
}
output+="</ul>";
document.getElementById("placeholder").innerHTML=output;
});
</script>
</body>
$.getJSON('data.json',函数(数据){
var输出=“”;
for(data.quick中的变量i){
输出+=“- ”+数据。测验[i]。测验名称+“
”;
}
输出+=“
”;
document.getElementById(“占位符”).innerHTML=输出;
});
我想以这样的列表格式显示所有的“quizName”
小测验1
小测验2
但是,按代码不输出任何内容
我不熟悉json和javascript,我不知道json文件是不正确还是javascript不正确。谢谢。删除json文件第9行和第19行的多余逗号。删除json文件第9行和第19行的多余逗号。json文件中对象的最后一项之后不能有逗号 更改:
"choiceB": "2",
为此:
"choiceB": "2"
对
choiceA执行相同的操作:“4”,
在JSON文件中,对象的最后一项后面不能有逗号
更改:
"choiceB": "2",
为此:
"choiceB": "2"
对
choiceA执行相同的操作:“4”
只需再执行一个循环即可
var output="<ul>";
for (var i in dataset) {
for (var j in dataset[i])
{
output+="<li>" + dataset[i][j].quizName+"</li>";
}
}
output+="</ul>";
document.getElementById("placeholder").innerHTML=output;
var输出=“”;
for(数据集中的变量i){
对于(数据集[i]中的变量j)
{
输出+=“- ”+数据集[i][j]。quizName+”
”;
}
}
输出+=“
”;
document.getElementById(“占位符”).innerHTML=输出;
给你:你只需要再做一个循环
var output="<ul>";
for (var i in dataset) {
for (var j in dataset[i])
{
output+="<li>" + dataset[i][j].quizName+"</li>";
}
}
output+="</ul>";
document.getElementById("placeholder").innerHTML=output;
var输出=“”;
for(数据集中的变量i){
对于(数据集[i]中的变量j)
{
输出+=“- ”+数据集[i][j]。quizName+”
”;
}
}
输出+=“
”;
document.getElementById(“占位符”).innerHTML=输出;
给你:如果你不确定Json是对的还是错的,你可以在这里在线或 你有多余的逗号 这是正确的Json
{"quiz":[
{
"quizName":"Quiz 1",
"question": [
{
"text": "1+1?",
"choiceA": "1",
"choiceB": "2"
}
]
},
{
"quizName":"Quiz 2",
"question": [
{
"text": "2+2?",
"choiceA": "3",
"choiceB": "4"
}
]
}
]}
也可以引用它
希望这对您有所帮助如果您不确定Json是正确的还是错误的,您可以在线或在此处查看 你有多余的逗号 这是正确的Json
{"quiz":[
{
"quizName":"Quiz 1",
"question": [
{
"text": "1+1?",
"choiceA": "1",
"choiceB": "2"
}
]
},
{
"quizName":"Quiz 2",
"question": [
{
"text": "2+2?",
"choiceA": "3",
"choiceB": "4"
}
]
}
]}
也可以引用它
希望这有帮助是什么让你认为其中一个是不正确的?你的JavaScript控制台怎么说?如果添加
console.log
语句来跟踪执行的代码位会发生什么?这是jQuery,不是JavaScript。@shmuli-胡说,jQuery是一个JavaScript库。所有jQuery都是JavaScript(尽管反过来不是真的)。请解释您遇到的问题。-第9行的分析错误:应为“STRING”-后面有逗号,这是一个不好的东西是什么让您认为其中一个是不正确的?你的JavaScript控制台怎么说?如果添加console.log
语句来跟踪执行的代码位会发生什么?这是jQuery,不是JavaScript。@shmuli-胡说,jQuery是一个JavaScript库。所有jQuery都是JavaScript(尽管反过来不是真的)。请解释您遇到的问题。-第9行的分析错误:应为“字符串”-后面有逗号,这是一个不好的东西。我还想获得所有问题“文本”的列表,你知道如何编写吗?我想你可以用与选择data.Quit[I].quizName相同的方法来选择它。类似于data.quick[i].question.text的内容,并根据需要将其格式化为
的一部分。虽然我不确定我是否理解你的问题。我还想得到一个所有问题“文本”的列表,你知道如何编写它吗?我想你可以像选择data.Quike[I].quizName一样选择它。类似于data.quick[i].question.text的内容,并根据需要将其格式化为
的一部分。虽然我不确定我是否理解你的问题。谢谢,但如果我想在第一次测验中显示“文本”“ChoiceA”和“ChoiceB”,我应该写什么?@user2184612最简单的方法是在更新的小提琴上看到,但你可以优化它。谢谢,但如果我想显示“文本”“ChoiceA”和“ChoiceB”,该怎么办对于第一个测验,我应该写什么?@user2184612最简单的方法可以在更新的fiddle上看到,但您可以优化它。