使用jQuery进行多文件上传

前端之家收集整理的这篇文章主要介绍了使用jQuery进行多文件上传前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我试图在表单发布之前允许多个文件上传.我想要的是用户只能看到一个文件上传元素,每次选择一个文件时,都会显示一个新的< li>包含文件名和图像/链接以从集合中删除该特定文件.有一个jQuery MultiFile插件可以满足我的需求,但我不能让自定义样式以我想要的方式工作,所以我自己动手.

到目前为止,我有以下代码.它成功添加< li>,用新选择的文件隐藏文件上传元素,并将空文件上传元素附加到页面以供用户选择新文件.我正在努力适当地管理元素的删除,虽然它并不那么困难,但我一直盯着这一点,现在只是觉得我做错了.我希望其他人可能有一些见解,提示要清理它(即使它更优雅),等等.代码如下.

HTML

脚本:

$(function () {
     $('.photo-upload').live('change',function () {
         var fileCount = new Number($(this).parent().children('.photo-upload').length);
         $('#photos').append('
  • 最佳答案
    答案是闭包,这是JavaScript最强大的功能之一.其他人的功能are able to access the variables of the enclosing functions.

    添加文件输入时可以绑定删除功能,而不是使用.live和动态生成的ID:

    $('.photo-upload').live('change',function () {
         var li = $('
  • 在此示例中,删除按钮的单击处理程序访问在父函数获取的jQuery包装器(对于必须删除的两个元素).

    猜你在找的jQuery相关文章