javascript - 如何循环这个函数?

标签 javascript jquery loops

感谢这里的一些帮助,我有一种方法可以预览选择和上传的图像,使用:

<input type='file' name="files[]" onchange="readURL(this);" multiple />
<div id="previews"></div>

<script>
    function readURL(input) {
        if (input.files && input.files[0]) {

            var reader = new FileReader();

            reader.onload = function (e) {
                var container = $('#previews');
                var image = $('<img>').attr('src', e.target.result).width(150);
                image.appendTo(container);
            };
            reader.readAsDataURL(input.files[0]);
        }
    }
</script>

我想知道如何为输入中选择的每个文件循环这个函数?我只是看不出在哪里使用类似 .each() 的东西

编辑:

我正在尝试这个..但它在某处出错了,因为它显示了 2 个预览,但都是相同的图像?

function readURL(input) {
    $.each(input.files,function(i) {
        var reader = new FileReader();
        reader.onload = function (e) {
            var container = $('#previews');
            var image = $('<img>').attr('src', e.target.result).width(150);
            image.appendTo(container);
        };
        reader.readAsDataURL(input.files[0]);
    });
}

最佳答案

input.filesFileList ,它就像一个数组。
您可以使用 jQuery.each就像任何其他数组一样。

关于javascript - 如何循环这个函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14791766/

相关文章:

c - 这个循环有什么问题?

javascript - 无法处理 promise 拒绝

javascript - Node.innerHTML 以小写形式给出标签名称

c# - 使用 WCF Duplex 回调更新 JQuery 进度条?

javascript - 禁用选择器中的选项,使其无法被删除

arrays - Java 数组反转逻辑

java - 不使用 string.length 遍历字符串

javascript - 如何使用 jquery 禁用提交按钮?

php - 使用 Hash(#) 的 Ajaxpageloak,有数字时异常(exception)(例如 : #1)

javascript - 使用 load() 加载 html 页面后,jQuery 单击事件处理程序不起作用