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

如何从JavaScript读取脚本标签中的JSON?

李鹏
2023-03-14
问题内容

我有一个动态生成的页面,我想在其中使用静态JavaScript,并向其传递JSON字符串作为参数。我已经看到Google使用了这种方法。

但是,我应该如何从JavaScript中读取JSON字符串?

<html>
  <head>
    <script src="jquery-1.6.2.min.js"></script>
    <script src="myscript.js">{"org": 10, "items":["one","two"]}</script>
  </head>
  <body>
    Hello
  </body>
</html>

在此JavaScript中,我想使用{"org": 10, "items":["one","two"]}HTML文档中的JSON参数。我不知道是否最好使用jQuery。

$(function() {
    // read JSON

    alert("the json is:")
})

问题答案:

我将脚本声明更改为:

<script id="data" type="application/json">{"org": 10, "items":["one","two"]}</script>

注释类型和ID字段。之后

var data = JSON.parse(document.getElementById('data').innerHTML);

在所有浏览器中都可以正常工作。

type="application/json"需要,以防止浏览器解析它,而加载。



 类似资料:
  • 问题内容: 我遇到一个问题,其中在JavaScript中用引号引起来的字符串中包含结束脚本标记,这正在终止该脚本。我认为这不是预期的行为。 我感兴趣的测试用例浏览器:Mozilla / 5.0(X11; U; Linux i686; en-US; rv:1.9.1.4)Gecko / 20091028 Ubuntu / 9.10(karmic)Firefox / 3.5.4。 问题答案: 怎么了?

  • 问题内容: 我在C#中使用Selenium。我有返回脚本代码的脚本代码。如何从中获取内容? 问题答案: 最好的办法就是使用和访问它。

  • 问题内容: 我的链接看起来像这样 我想从那里去。我试过了 它输出。 我试过了,但它给了我KeyError。我该如何解决?我的错误是什么? 问题答案: 您可以使用css选择器,使用标题文本拉出所需的跨度: 找到具有包含 RAM 的 title 属性的 跨度 ,等效于在python中说。 或在 re.compile中 使用 find __ 要获取所有数据: 这会给你:

  • 问题内容: 在某些情况下,我必须从标记中获取文本,例如- 输入标签中的文本是一些说 但是当我使用时,它什么也不会返回。 无论如何,我可以从标签中获取文本吗? 问题答案: 您可以使用以下任何一种: 让我知道这是否没有帮助。

  • 问题内容: 我正在做漂亮的汤。我有一个html字符串: 我如何检索“获取此”,而忽略“ 忽略此 ” 谢谢 问题答案: 您可以获取文本,而不必递归检索子文本: 这与文本相对于孩子的位置无关:

  • 我试图从桌面隐藏一个javascript脚本块,并且只能在移动设备上显示它。 谢谢