2017-03-08 78 views
-2

我有一个JSON文件作为data.json,我有一个嵌入JavaScript的HTML文件。我想通过简单的HTML(file:/// C:/Users/XYZ/Desktop/htmlpage.html)文件访问JSON文件中的数据,而不是以服务器客户端方式(http://...。)访问数据。我试过以下简单的代码来导入JSON文件。如何访问JavaScript中的JSON文件?

<!DOCTYPE html> 
<html> 
<body> 

<p>Access an array value of a JSON object.</p> 

<p id="demo"></p> 

<script type="text/javascript" src="F:/Folder/data.json"> 

var myObj, x; 

x = data[0].topic; 
document.getElementById("demo").innerHTML = x; 

</script> 

</body> 
</html> 

我已经阅读其他StackOverflow的问题使用

<script type="text/javascript" src="F:/Folder/data.json"> 

的这种方法。但它不起作用。

请告诉我访问JSON文件中数据的最简单方法。

+6

JSON不是JavaScript脚本。这只是一种描述数据的结构化方式。您无法将其加载为其JavaScript脚本。 – YounesM

+0

搜索'打开本地文件javascript'给了[this](http://stackoverflow.com/questions/41765457/local-javascript-cannot-open-local-file)和[this](http://stackoverflow.com/问题/ 38756968 /开放本地文件,在JavaScript的)。 –

+0

[我怎样才能让javascript从.json文件中读取?](http://stackoverflow.com/questions/6711002/how-can-i-get-javascript-to-read-from-a- json-file) – driconmax

回答

0

你可以尝试以分配数据给一个变量写这样的事情在你的JSON文件:

window.data = JSON.parse('insert your json string here'); 

然后你可以在你的页面的JavaScript访问window.data。您也可以省略window.,并且仅从data分配和/或读取,这与window.data相同。

也许一个更清晰的方法是使用jQuery或vanilla Javascript的AJAX请求,这两种方法都有很多可用的答案在这个网站上。

你也可以考虑与jQuery.getJSON()的解决方案:Loading local JSON file

-1

如果您能够使用PHP为您所需的任务(从JSON文件访问数据,并做一些东西与数据),这将是更容易使用PHP打开JSON文件。您可以使用以下代码来访问JSON文件。

这里$ JSON将是最外面的对象/阵列(如果文件开头 '[')(如果文件与 '{' 开始)。然后你可以定期使用它。

也许你们中的一些人可以认为我为什么在Javascript问题中发布PHP解决方案?但是我发现这比在Javascript中打开文件要容易得多。所以如果你被允许使用PHP,那就去吧。