为div的内容刮取HTML页面并将其传递给变量

时间:2016-12-22 16:50:25

标签: javascript jquery html json

我需要抓取一个JSON字符串的网页,该字符串位于div内,并带有“json-data”id。 JSON字符串与jQuery代码本身在同一页面上,所以我首先需要获取页面(使用.get?),找到div(使用某些东西),然后将其解析为JSON :(

我需要将div的内容解析为JSON对象并将其传递给变量,以便稍后在代码中使用它。

我必须使用jQuery v1.8.3,但我认为.get().load()有效。我只是不确定如何获取JSON并将其放入变量中。

1 个答案:

答案 0 :(得分:1)

这是一个使用jQuery 1.8.3的例子,正如你所问的那样。很简单!

我在#json-data元素中放置了一个示例JSON字符串,然后使用jQuery&#39; s .html()读取元素的内容,并用JSON.parse()解析字符串。< / p>

&#13;
&#13;
$.get( "ajax/test.html", function( data ) {
    var myJson = JSON.parse( $(data).find('#json-data').html() );

    console.log('glossary.title:', myJson.glossary.title)
});
&#13;
<!-- HTML for ajax/test.html page -->
<div id="json-data">
  { "glossary": { "title": "example glossary", "GlossDiv": { "title": "S", "GlossList": { "GlossEntry": { "ID": "SGML", "SortAs": "SGML", "GlossTerm": "Standard Generalized Markup Language", "Acronym": "SGML", "Abbrev": "ISO 8879:1986", "GlossDef": { "para":
  "A meta-markup language, used to create markup languages such as DocBook.", "GlossSeeAlso": ["GML", "XML"] }, "GlossSee": "markup" } } } } }
</div>
&#13;
&#13;
&#13;