(我发现了一些类似的问题,但没有一个解决了我的问题,所以我认为这不是一个重复的问题)
我想使用 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>
那么我是否可以从“数据”中检索文件名? (不是通过使用正则表达式)
您无法读取客户端计算机中的文件。您可以通过修改标志来访问它们以用于开发目的。关于这一点,请查看我的回答。之后继续执行以下代码。
两者都有效。
使用纯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>