2016-06-22 59 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的形式)。

相關問題