2014-12-05 19 views
0

是否可以使用JavaScript File API讀取未知編號的文件對象?我使用custom file upload form其中代碼沒有輸入元素。它使用plupload.js API,我無法確定如何訪問文件對象的內容。javascript讀取文件對象未知編號

例如,如果代碼具有類似的線1,I可以用線的2

  1. input type="file" id="data"
  2. var finput = document.getElementById("data"); var f = finput.files[0];

我試圖東西的代碼訪問文件對象的內容像document.files[0]但它不起作用。你知道類似的東西嗎?

+0

最終我在這裏找到了解決方案http://stackoverflow.com/questions/24366312/plupload-get-uploader-object-v2-1-2-for-file-reader – redline 2014-12-06 11:16:02

回答

0

而不是document.files[0],請嘗試document.querySelectorAll('input[type="file"]')[0]

function demo(){ 
 
    var inpts=document.querySelectorAll('input[type="file"]'); 
 
    alert(inpts[0].className); 
 
}
<input type="file" class="file_input_a"><br> 
 
<input type="file" class="file_input_b"><br> 
 
<input type="file" class="file_input_b"><br> 
 
<button onclick="demo()">Demo</button>

上面的例子Echo的文件輸入0的類名(簡單地顯示,我們必須對它的引用)。
從這裏你想抓住(例如)第一個文件(從第一個找到的輸入元素):

var f = inpts[0].files[0]; 

PS:有我的回答linked here了很多很好的相關信息。

+0

好的答案!但它不適合我的目的。例如,它提醒我一個空白行。我應該看看plupload.js API並搜索如何訪問文件對象 – redline 2014-12-06 07:17:23

+0

*什麼*提醒你一個空行?你使用的是什麼瀏覽器?在我的電腦上它會提示'file_input_a'。 – GitaarLAB 2014-12-06 13:34:40

+0

此警報(inpts [0] .className)。我正在使用Firefox。基本上我相信,提醒一個空行,因爲plupload API不會創建一個輸入元素。但一般來說,你的代碼解決了我的一般問題。現在在我的問題中,我發現了一個解決方案,因爲我在第一篇文章的評論中寫道。 – redline 2014-12-06 13:44:18