(我发现了一些类似的问题,但没有一个问题解决了我的问题所以我认为这不是一个重复的问题)
我想使用jQuery在我的一个文件夹中检索文件名。我尝试了以下方法,但我仍然无法获得每个文件名。
$.get(".", function(data) {
$("#divID").append(data);
});
但我注意到了数据的类型'是字符串,它包含文件名,如下所示:
<script>addRow("filename.csv","filename.csv",0,238618,"233 kB",1512119177,"12/1/17, 5:06:17 PM");</script>
无论如何,我可以从&#39;数据&#39;中检索文件名。 (不是使用正则表达式)
答案 0 :(得分:0)
您无法读取客户端计算机中的文件。您可以通过修改标志来访问它们以进行开发。关于此,请查看my answer。在此之后继续下面的代码。
两者都有效。
使用 PURE JAVASCRIPT :
var filenames=[], foldernames=[];
var url = "file:///Users/Default/Downloads";
var req = new XMLHttpRequest();
req.open("GET",url,true);
req.onreadystatechange=function(){
if(req.readyState === 4)
{
document.write(req.responseText);
getNames();
}
};
req.send();
function getNames()
{
var files = document.querySelectorAll("a.icon.file");
var folders = document.querySelectorAll("a.icon.dir");
files.forEach(function(item){filenames.push(item.textContent)})
folders.forEach(function(item){foldernames.push(item.textContent.slice(0,-1))})
console.log(filenames);
console.log(foldernames);
}
使用 JQUERY :
var filenames=[], foldernames=[];
$.get("file:///Users/Default/Downloads",function(response){
document.write(response);
getNames();
});
function getNames()
{
var files = document.querySelectorAll("a.icon.file");
var folders = document.querySelectorAll("a.icon.dir");
files.forEach(function(item){filenames.push(item.textContent)})
folders.forEach(function(item){foldernames.push(item.textContent.slice(0,-1))})
console.log(filenames);
console.log(foldernames);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>