例如在网页中我有一个地方:


 < script id =“ajaxify-data”type =“application / json”>& #xA; {“key1”:123,“key2”:333}
< / script>



 我可以用javascript来解析它? (具体来说,ajaxify-data)


 jQuery $(“#ajaxify-data”)
在这里不起作用.. 编辑:我想抓取的网站实际上比上面给出的简单示例更复杂......
https://discuss.leetcode.com/unread 看起来像网络资源,但包含 ajaxify-data
标签,它实际上以ajax结果呈现数据,而不是将其存储在上面的实际ajax标签中。
这就是我在控制台:
&#XA;&#XA;<代码>&GT; document.getElementById('ajaxify-data')&#xA; null&#xA;&#xA;&#xA; &#xA;
答案 0 :(得分:5)
只需JSON parse
脚本标记的innerHTML。
普通JavaScript:
var json = JSON.parse(
document.getElementById('ajaxify-data').innerHTML
);
console.log(json);
console.log(json.key1);
&#13;
<script id="ajaxify-data" type="application/json">
{ "key1": 123, "key2": 333 }
</script>
&#13;
或者使用jQuery:
var json = JSON.parse($('#ajaxify-data').html())
console.log(json);
console.log(json.key1);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script id="ajaxify-data" type="application/json">
{ "key1": 123, "key2": 333 }
</script>
&#13;
答案 1 :(得分:2)
$('#ajaxify-data').html()
$('#ajaxify-data').text()
适合我)
答案 2 :(得分:0)
有多种方法可以获取内联script
元素的内容:
textContent
:返回节点的文本内容innerHTML
:返回元素的HTML内容text
:返回HTMLScriptElement的文本内容然后,如果它包含JSON,您可以使用JSON.parse
解析它。