Javascript 如何从输入类型文件生成缩略图和文件名,并将它们插入到多个元素中?

Javascript 如何从输入类型文件生成缩略图和文件名,并将它们插入到多个元素中?,javascript,jquery,Javascript,Jquery,我设法通过下面的脚本生成缩略图 $('input#fileupload')。在('change',function()上{ 对于(var i=0;i

我设法通过下面的脚本生成缩略图

$('input#fileupload')。在('change',function()上{
对于(var i=0;i”+name[i]+”);
};
fr.readAsDataURL(this.files[i]);
}
});

但无法将文件名插入附加的
  • 元素

    问题是因为您使用的
    文件.item(i).name
    无效。相反,您需要通过索引访问
    文件
    数组,然后获取
    名称
    属性

    还要注意,当您将变量附加到
    span
    中时,可以直接使用
    name
    ,而不是
    name[i]

    最后,在
    onload
    事件处理程序中,需要使用闭包来维护当前
    文件的范围。试试这个:

    $('input#fileupload')。在('change',function()上{
    对于(var i=0;i”+name+”);
    };
    fr.readAsDataURL(文件);
    })(此.files[i])
    }
    });
    
    
    

      Err,它确实添加了文件名,但是当附加了多个文件时,所有文件名都变为相同的。你说得对-我更新了答案以解决这个问题。基本上,您需要一个闭包来将循环的范围保持在
      onload
      事件句柄中。谢谢Rory,你太棒了!现在可以了!我要绞死我两天,你三分钟就把它修好了。我可以在这里看到级差。因为我需要从文件输入中获取每个附加图像