html原生的file多选控件:<input class="className" type="file" name="name" accept="image/*" multiple />

存在问题:第一次选择了n个文件,第二次选中m个文件,第二次选择结束之后,第一次选择的文件会被覆盖掉。导致上传的内容不包含最后一次之前选择的文件。

解决方案:

1.用一个div作为选择文件的触发节点:<div id="uploaderBox" class="weui-uploader__input"></div>

2.给uploaderBox绑定点击事件:点击div动态添加file控件(隐藏),给file控件绑定change事件(预览操作等),模拟file控件点击事件触发选择文件操作。代码如下:

$("#uploaderBox").on("click", function(e) {
var newFileInput = "<input id='uploaderInput' type='file' name='name' accept='image/*' multiple />";
$(this).parent().append($(newFileInput));
$("#uploaderInput").bind("change", function(e){
//onFileUploaded(e);预览等操作
$(this).removeAttr("id");
});
$("#uploaderInput").click();
});
<div id="uploaderBox" class="weui-uploader__input"></div>
<-- <input type="file" name="name" accept="image/*" multiple=""> --> <-- 动态添加的file控件 -->

最新文章

  1. MongoDB-集群搭建
  2. NYOJ题目1051simone牌文本编辑器
  3. Jquery学习笔记--性能优化建议
  4. 如何在UMG中上显示3D物体
  5. NGUI UIToggle
  6. Excel与SqlServer的导入导出问题总结
  7. 学习笔记_过滤器详细(过滤器JavaWeb三大组件之一)
  8. -_-#【Angular】定义服务
  9. java获取当前时间
  10. MySQL用户管理:添加用户、授权、删除用户
  11. 201521123067 《Java程序设计》第11周学习总结
  12. maridb\mysql 源码安装,以10.1.26版本为例
  13. 异步任务spring @Async注解源码解析
  14. 你不需要 jQuery,但你需要一个 DOM 库
  15. cetos6.8配置svn服务器
  16. Mark SDL2 Lazy Foo&#39;s Producations
  17. BZOJ-1- 4868: [Shoi2017]期末考试-三分
  18. .net Parallel并行使用注意事项
  19. thinkphp5 数据库和模型
  20. JAVA设计模式——第 2 章 代理模式【Proxy Pattern】(转)

热门文章

  1. 使用 WebSockets 技术的 9 个应用场景
  2. R0—New packages for reading data into R — fast
  3. LintCode 402: Continuous Subarray Sum
  4. 【CodeForces】901 C. Bipartite Segments
  5. TensorFlow下利用MNIST训练模型识别手写数字
  6. 【bzoj5050】【bzoj九月月赛H】建造摩天楼
  7. php cache类代码(php数据缓存类)
  8. Metro应用Json数据处理
  9. CentOS下NTP安装配置
  10. scrapy使用PhantomJS和selenium爬取数据