这里我使用AJAX jQuery使用以下代码动态创建一个文件名列表!
$(window).load(function () {
var fileExt = ".csv";
$(document).ready(function () {
$.ajax({
url: 'file:///F:/foldername/',
success: function (data) {
console.log(data);
$("#fileNames").html('<ul>');
$(data).find("a:contains(" + fileExt + ")").each(function () {
$("#fileNames").append('<li><input id='chckId' type = 'checkbox'/>' + $(this).text() + '</li>');
});
$("#fileNames").append('</ul>');
},
failure: function (response) {
alert(response);
}
});
});
});
<div id='fileNames' class="panel-body" style="display: block;"></div>
你不能。
大多数浏览器将完全阻止对本地文件系统的访问(通过XMLHttpRequest),而那些不提供读取目录机制的浏览器。
例如:Chrome说:
Firefox说:XMLHttpRequest无法加载文件:///Users/me/tmp/。跨域请求只支持以下协议方案:http、data、chrome、chrome-extension、https、chrome-extension-resource。
虽然对于文件而不是目录,但它将列出内容(前提是该文件与HTML文档在同一目录中或在同一目录下)。NS_ERROR_DOM_BAD_URI: Access to restricted URI denied
但是f:///foldername可以在浏览器中访问。但是无法在js中访问!为什么?
把硬盘上的数据交给你,作为控制浏览器的人,与把数据交给文件中的一些JavaScript是不同的,这些文件可能是从任何地方下载的,可能会对它做任何事情(比如把它发送给写JS的人)。