这是我的代码:
<script type="text/javascript"
src="http://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js">
</script>
<script>
$(function() {
var thing = [];
var bar = $.getJSON('C:\Users\cccompro\foo.json', function(obj) {
for (i = 0; i < obj.length; i++) {
thing.push(obj[i]);
}
});
});
</script>
我不确定为什么它不起作用。 &#34; foo.json&#34;包含一组对象。
答案 0 :(得分:1)
如果没有浏览器权限,您无法直接从用户硬盘读取文件。如果您有办法允许这样做(结账客人回答),这将是一个巨大的安全问题。
然而,您可以尝试让用户选择该文件,然后使用Javascript读取它。 这称为HTML 5文件API。
但是,这对任何浏览器都不起作用,在这种情况下你可能不得不使用服务器。
答案 1 :(得分:1)
如果您在Chrome或Chromium浏览器的问题区域中尝试使用此代码,请启动设置了--allow-file-access-from-files
标记的浏览器实例。请注意,启动浏览器时应关闭Chrome或Chromium的打开实例,否则将使用打开的浏览器实例启动实例。配置文件夹,而不是标志设置。您可以在现有实例打开的情况下启动Chrome或Chromium,并使用--user-data-dir
标记来启用该标记,并将值设置为与打开的Chrome或Chromium实例不同的目录。
从技术上讲,也可以在不使用带window.webkitRequestFileSystem
的扩展名的情况下写入用户文件系统。虽然在扩展中使用chrome.fileSystem
提供了一个旨在实现读/写的API。
见
使用<input type="file">
元素