当前位置: 首页 > 面试题库 >

尝试使用jQuery解析JSON文件

鲍建业
2023-03-14
问题内容

我正在尝试使用下面的确切结构来解析JSON文件

{
    "students": {
        "student": [
            {
                "id": 1,
                "name": "John Doe",
                "image": "pic1.jpg",
                "homepage": "http: //www.google.com"
            },
            {
                "id": 2,
                "name": "Jane Doe",
                "image": "pic1.jpg",
                "homepage": "http: //www.google.com"
            }
        ]
    }
}

我正在使用以下jQuery函数:

function GetStudents(filename)
{
    $.getJSON(filename, function(data){
        $.each(data.student, function(i,s){
            var id = s.id;;
            var name = s.name;;
            var img = s.image;;
            var homepage = s.homepage;
            $('.networkTable').append('<tr><td><img src="' + img + '" class="picEven pic" width="33" height="35"></td><td><a href="'+ homepage + '" class="networkLink">' + name + '</a></td></tr>');
        });
    });
}

我做错什么了吗?


问题答案:

您没有访问正确的元素。data不指向students,它指向最外面的元素{students:...}students是它的属性)。该数组包含在data.students.student

$.each(data.students.student, function() {
    //...
});

进一步说明:

  • 如果仅访问属性一次,则无需创建局部变量(但当然,它可能更易读)。

  • 虽然连续使用分号;;是没有错的,但这是不必要和令人困惑的(至少这使我感到困惑;)



 类似资料:
  • 问题内容: 我对JavaScript的了解很少(没有),或者对使用API​​的了解很多。但是,我想在我的网站上显示一些酒店评论,这些评论通过qype.com API提供。但是,我正在努力管理这一点。 这是我到目前为止的代码: 我的正文中有一个div,它要显示文本。 任何建议都收到了。 JSON可以在http://api.yelp.com/business_review_search?term=hi

  • 问题内容: 如何使用jQuery解析此json? 问题答案: 术语“解析”有点放错了位置,因为它已经是JSON格式。 您无需解析它,而只需对其进行访问。如果它是JSON格式的大String,则确实需要在访问之前先将其解析为可用的JSON对象。 此JSON包含一个属性,而该属性又包含一个array 。您可以使用点运算符访问属性。您可以使用给定的索引获取数组项,其中零表示第一项。 该数组又包含一个对象

  • 使用DateTimeFormatter仅解析LocalTime变量的“Time of Day”时出现问题。尝试了几种不同的格式,但没有看到我缺少了什么(我在想,既然我使用了DateTimeFormatter,我就需要一个date组件,但我只使用了LocalDate就没问题了,而且文档说它支持LocalTime)。 提前感谢任何帮助/链接,以确定我的错误导致异常。 使用此SSCCE复制: ...我得

  • 问题内容: 我想使用 GSON* 在 JAVA中 解析此 JSON 文件: *** 但是我不知道如何加入root元素: 描述符 ,之后是 app3 元素,最后是 name 元素。 我遵循了本教程http://www.mkyong.com/java/gson-streaming-to-read-and-write- json/ ,但是它没有显示具有root和childs元素的情况。 问题答案: Im

  • 我学习了这个教程http://www.mkyong.com/java/gson-streaming-to-read-and-write-json/,但它没有显示root和childs元素的情况。

  • 我试图在Angular中发出请求,我知道HTTP响应不是在JSON中,而是在文本中。但是,Angular似乎期待一个JSON响应,因为错误如下: SyntaxError:JSON中XMLHttpRequest.c的JSON.parse()位置0处的意外标记< 我认为足以使Angular expect得到非JSON响应。