2016-06-22 58 views
-1
<!DOCTYPE html> 
<html> 
<div class = "Top"> 
<center> 
<h1> 
Reaper MP3 
</h1> 
</center> 
</div> 

<div class = "Middle"> 
<center> 
<input type = "file" webkitdirectory id = "In" oninput = "LoadFiles()" value = ""> 

<br> 

<select id = "Sel" class = "S"> 
</select> 
</center> 
</div> 

<div class = "Bottom"> 
<center> 
<audio controls src = "" id = "Plyr"> 
</audio> 
</center> 
</div> 

<style> 
.Top { 
width: 100%; height: 50px; 
background: #FF0000; 
} 

.Middle { 
width: 100%; height: 500px; 
background: #990099; 
} 

.S { 
width: 150px; height: 25px; 
} 

.Bottom { 
width: 100%; height: 50px; 
background: #FF0000; 
} 
</style> 

<script> 
var SelectFolder = document.getElementById("In"); 

var Player = document.getElementById("Plyr"); 
var Select = document.getElementById("Sel"); 

var DefaultFolder = "/This PC/Music"; 
var NewOption = document.createElement("option"); 
var Info = document.createTextNode(""); 
NewOption.appendChild(Info); 

Select.appendChild(NewOption); 

function LoadFiles() { 

} 
</script> 
</html> 

我试图让它到我可以添加选项的位置,以便为文件夹中的每个文件选择。在我的情况下,文件夹的路径是“/ This PC/Music”,然后将它放到音频src =所选文件/选项的位置。有谁知道我该怎么做?为每个文件创建选项

回答

2

Javascript无法正常从磁盘上的文件夹中读取。如果这些文件夹位于您的服务器上,则需要使用某种服务器端语言(例如PHP,ASP.NET/C#)查看这些文件夹并为您创建HTML标记。或者有一个web服务,将列表返回到您的JavaScript(通过Ajax),然后JavaScript构建它 - 但在这种情况下,似乎没有必要,除非有更多的它

0

作为ADyson指出JavaScript运行客户端,所以你不能访问这些文件。然而,你可以用php(它是服务器端)做到这一点,我会告诉你如何:

<html> 
    <head></head> 

    <body> 
    <?php 
     $dir_handle=opendir("directory_path_here"); //creates a handle of the dir 
     while (false!==($file=readdir($dir_handle))) { //loop through files/folders in the dir 
      echo("<input type='checkbox' name='items[]' value='$file' />"); //show it on page after load 
     } 

    ?> 


    </body> 


</html> 

这些是复选框。我看到你的代码中有一个选择,你也可以使用它。在用户选择了一些东西之后,您可以使用jQuery与jQuery一起播放音乐或刷新发送选定音乐的页面(以get或post的形式)。

相关问题