我想将文件输入值传递给jQuery
函数,它可以是多个文件。那我该怎么做呢?
下面是我的代码。
HTML
<input id="images" name="images[]" placeholder="" class="form-control input-md" type="file" accept="image/*" multiple/>
的jQuery
$('#images').change(function(){
var input = document.getElementById("images");
uploadImages(input);
/* what should I pass to this function . this function have $.ajax method, which will upload images folder */
});
答案 0 :(得分:0)
您可以在数组中按名称获取所有文件输入,例如
您可以使用.map()
功能
var fileNames = $('input[name="images[]"]').map(function(){return $(this).val();}).get();
并在您的函数中视为数组。 请参阅FIDDLE
答案 1 :(得分:0)
试试这个:
<input type="file" name="files" multiple="multiple" />
<div id="files-selected"></div>
$(':file').change(function () {
$('#files-selected').text(this.files.length + " file selected");
alert(this.value); });
答案 2 :(得分:0)
jQuery还没有从<input type="file">
访问数据的方法,但您可以将File interface用于现代浏览器(FF7 +,Chrome13 +,IE10 +)。
如果您只想通过AJAX提交数据,我可以使用FormData interface,这在我看来更容易。 MDN甚至在how to use it with jQuery上有例子。
答案 3 :(得分:0)
$(document).ready(function() {
$('#FileInput').change(function(){
var numOfFile = document.getElementById('FileInput');
for (var i = 0; i < FileInput.files.length; ++i) {
var name = FileInput.files.item(i).name;
alert("here is a file name: " + name);
}
});
});
<input type='file' id='FileInput' multiple='multiple'></input>
希望这对你有帮助!