我需要从JSON文件中获取该代码的错误名称? 我想从每个结果中获取名称值并将它们添加到正文中。
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.2.1.js" integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE="crossorigin="anonymous"></script>
<script>
$.ajax({
type: "GET",
dataType: "json",
url: "https://wger.de/api/v2/exercise.json?category=8&language=2",
success: function(data){
$.each(data,function(index,object){
$("body").append("<div>"+object.name +"</div><br/>")
})
}
});
</script>
</head>
<body>
</body>
</html>
答案 0 :(得分:3)
唯一的问题是您使用了错误的对象进行迭代。
如果您运行此代码段,则可以在控制台上看到返回的对象。
$.ajax({
type: "GET",
dataType: "json",
url: "https://wger.de/api/v2/exercise.json?category=8&language=2",
success: function(data){
console.log(data)
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
如您所见,您需要迭代data.results
,因此此代码应该有效:
$.ajax({
type: "GET",
dataType: "json",
url: "https://wger.de/api/v2/exercise.json?category=8&language=2",
success: function(data){
if(data.results){
$.each(data.results,function(index,object){
$("body").append("<div>"+object.name +"</div><br/>")
})
}
}
});
答案 1 :(得分:0)
提供给成功回调的data
参数是一个Object,其result属性是一个对象数组。
不是将整个data
对象传递给$ .each,而应该只给它结果数组:
success: function(data){
$.each(data.results, function(index, object){
$("body").append("<div>"+object.name +"</div><br/>")
})
}