javascript - 如何创建一个弹出窗口来选择本地目录中的文件?

标签 javascript php jquery html file

我想创建一个弹出窗口,显示某个目录中的所有文件,例如/functions 目录。我希望能够单击该目录中的文件,单击确定,然后将其信息存储在变量中(而不是上传),我该怎么做?

我试过使用如下形式:

<form action="" method="post" enctype="multipart/form-data">

但是我无法指定要打开的目录,我必须手动导航到该目录。

我试过使用 window.open()

window.open("file:///" + "home/user/Desktop/demo/functions");

我试过使用 onclick 链接机制:

<a onclick="file:///+ "home/user/Desktop/demo/functions"">Open folder</a>

这些似乎都不起作用,有什么方法可以解决这个问题吗?

最佳答案

在 JavaScript 中,文件处理变得有点困惑。从 JavaScript 获取文件夹内容的唯一方法是连接到服务器,并使用不同语言的服务器端代码将文件夹信息传递回 JavaScript。

我认为我们能够伪造这个结果的唯一方法是放置一个index.html目标目录中的文件。这index.html file 然后将具有其中文件夹中所有文件的名称。但是,它们必须手动插入到 HTML 文件中。 (如果你知道如何使用 PHP,它可以扫描目录并将内容推送到 HTML 文件)

当 Web 浏览器必须导航到文件夹时,它会向服务器请求 index文件(通常是 HTML 或 PHP 文件)。然后该索引将在其中包含文件夹的内容。

但是,如果该文件夹确实在本地计算机上,我们还有最后一种方法...

如果页面使用 window.location 导航到文件夹类似于 file:///C://Users/USERNAME/Desktop/My%20Folder/ 的东西, chrome(或您使用的任何浏览器)将导航到该目录并显示该目录的内容。但是,由于您无法将 JavaScript 放入浏览器生成的索引页面中,因此您将无法对其进行操作。

关于javascript - 如何创建一个弹出窗口来选择本地目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40329825/

相关文章:

javascript - 确保附加行始终是动态创建的行组成的表中的最后一行。 。分离()

javascript - 使用跨源资源共享的跨域 POST 查询没有返回数据

javascript - 如何在主干中设置自定义基本href?

php - EOT 和 HTML 有什么区别?在 PHP 中

PHP MYSQL 如果存在则更新,如果不存在则插入?

javascript - 在flot-pie图表js中哪里添加和注册自定义属性?

javascript - 编辑: Secure Checkout on Bigcommerce - Uncheck default option "I also want to ship to this address"

javascript - 获取CSS过渡值

javascript - 我想使用 onclick 事件将 HTML 从 'OFF' 更改为 'ON',就像切换一样

php - 选择不包含重复数据的语句