2011-04-28 22 views
0

我試圖讓我的上傳腳本與jQuery一起工作,但在獲取多個表單中排隊的值(文件)時出現問題。如何使用jQuery讀取多個表單中的所有值

我可以得到它的工作,所以我可以在一個輸入中選擇10個文件,但是當我試圖獲取這些值時,我只能獲得10個同時添加的第一個文件。我可以上傳文件並獲取它的值,但我想讓它與jQuery一起工作,以及我無法工作的東西。

下面是代碼:

<!DOCTYPE html> 
<html lang="en-us"> 
<head> 
<script src="jquery-min.js"></script> 
<script> 
$(document).ready(function() { 
    $("form").change(function() { 
    var form = $(".forms").val(); 
     $(".files").append("Files:"+form); 
    }); 
    }); 
</script> 
</head> 
<body> 
<form action="" method="post" enctype="multipart/form-data"> 
    <input type="file" class="forms" value="" name="upload[]" multiple> 
    <button type="submit">Upload!</button> 
</form> 
<div class="files"></div> 
<?php var_dump($_FILES);?> 
</body> 
</html> 

所以,當我拖動,選擇文件,並增加了他們那麼只有第一個值被分配給「div.files」。所以我的問題是我如何讀取它裏面的文件的數組,所以我只是沒有得到第一個?

這裏是顯示問題的圖像:http://i.stack.imgur.com/lOAvk.png

回答

0

我推薦一個jQuery上傳插件,如:Upoadify。它有一個很好的UI開箱即用的進度條,可能爲您的代碼提供了更好的API。這裏有一個例子:

<script type="text/javascript"> 
    $(function() { 
     $('#file_upload').uploadify({ 
     'uploader'  : '/path/to/uploadify.swf', 
     'script'  : '/path/to/uploadify.php', 
     'cancelImg'  : '/path/to/cancel.png', 
     'folder'  : '/uploads', 
     'onAllComplete' : function(event,data) { 
      document.getElementByID('someForm').submit(); 
     } 
     }); 
    }); 
</script> 
<form id="someForm" action="someFile.php" method="post"> 
<input name="someField" type="text" /> 
<input id="someID" name="someName" type="file" /> 
<input onclick="$('#someID').uploadifyUpload()" type="button" value="Submit" /> 
</form> 
+0

是的,我已經試過了,但它仍然無法正常工作(其flashscript仍然有蟲子在裏面),我沒有時間等待我的應用程序的3.0版本。感謝您的快速回答。 – Alexander 2011-04-28 15:18:25

相關問題