7

如何在 javascript/jQuery 中从本地 PC 获取目录的内容?例如从C:\Images

4

8 回答 8

25

这仅适用于谷歌浏览器:

<input type="file" webkitdirectory>

这将提示用户选择一个目录,然后您可以访问files输入的属性以查看包含的文件。

然后可以使用文件系统 API为用户选择的文件构建一个虚拟的沙盒文件系统,并以编程方式访问这个虚拟文件系统,就好像它是一个由桌面应用程序访问的真实文件系统一样。

没有其他办法,因为那将是一个很大的安全问题

谷歌浏览器中的工作演示:http: //jsfiddle.net/JwgqC/

于 2012-11-29T11:15:10.840 回答
2

here you can read local files by html5 and javascript using the file APIS

http://www.html5rocks.com/en/tutorials/file/dndfiles/

于 2012-11-29T11:19:51.403 回答
1

出于安全原因,Javascript/Jquery 无法访问本地文件系统。这是不可能的。所以尝试一些服务器端基本代码。

于 2012-11-29T11:16:57.143 回答
1

现在,几年后,在 ChromeFirefox(52.8,但更新 Firefox 很容易)中访问本地文件可以正常工作。它也适用于 IE 11。

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>files</title>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
</head>
<body>
<script>
// Check for the various File API support.
if (window.File && window.FileReader && window.FileList && window.Blob) {
  // Great success! All the File APIs are supported.
} else {
  alert('The File APIs are not fully supported in this browser.');
}
</script>
</body>
</html>
于 2018-10-19T06:39:22.827 回答
0

我认为这是不可能的,因为访问本地文件系统是一个可怕的安全风险。

于 2012-11-29T11:13:22.157 回答
0

Javascript 无法访问用户驱动器。那将是一个很大的安全问题,不是吗?:D

相反,您需要使用其他技术,例如 flash 或 java-applet。

于 2012-11-29T11:14:28.783 回答
0

无法从浏览器通过 javascript 访问本地文件系统,这很好!

于 2012-11-29T11:15:09.983 回答
0

您可以使用 php、ruby、java 等技术编写脚本,该脚本将列出所有文件,然后通过 ajax 将此信息发送到您的浏览器。

但是由于安全限制,您不能仅通过 javascript 执行此操作。

于 2012-11-29T11:13:04.977 回答