我一开始用的uploadify控件,但浏览按钮不可点,ie8,9不支持图片多选,后来用bootstrap-fileinput,依然不兼容,点浏览按钮不可用,哪位大神解解惑,小白一枚再次感谢!
通过这几天的摸索,发现没有兼容IE8,9的图片批量上传,一般官方的都是支持IE10以上的,看来只能苦逼的一个一个上传了
1 <html> 2 <body> 3 <style> 4 #file-area input{ 5 display: none; 6 } 7 </style> 8 9 <ul id="file-list"> 10 </ul> 11 <form action="youhref" method="post"> 12 <div id="file-area"> 13 <input data-id="0" type="file"> 14 </div> 15 <input type="button" id="select-file" value="Select File" /> 16 <input type="submit" value="submit"/> 17 </form> 18 <script src="http://apps.bdimg.com/libs/jquery/1.8.3/jquery.min.js" ></script> 19 <script> 20 var count = 0; 21 $("#select-file").click(function(){ 22 $("#file-area").children().last().click(); 23 }); 24 $("#file-area").on("change", "input",function(){ 25 var li = $("#file-list li[data-id='"+$(this).data("id")+"']"); 26 console.log(li) 27 if(li.length == 0) 28 { 29 li = $('<li data-id="'+(count++)+'"></li>').append("<span></span><i>X</i>"); 30 $("#file-list").append(li); 31 $("#file-area").append('<input data-id="'+count+'" type="file">'); 32 33 } 34 li.find("span").html(this.value); 35 }) 36 $("#file-list").on("click","i",function(){ 37 var li = $(this).parent(); 38 $("#file-area input[data-id='"+li.data("id")+"']").remove(); 39 li.remove(); 40 }) 41 $("#file-list").on("click","span",function(){ 42 $("#file-area input[data-id='"+$(this).parent().data("id")+"']").click(); 43 }) 44 </script> 45 </body> 46 </html>
试一下这个,考虑到你会用到bootstrap,用了委托式绑定的事件,如果看不惯,可以改成live,效果一样的。
然后在提交的之前,记得给所有的input file的name属性赋值。例如给你的submit绑个click。
这个方法是我随便写的,依旧解决不了文件弹窗只能选择一个问题,但是至少提交能提交多个了。相信这个交互你的你的上帝们也能接受接受,比起按住ctrl一个一个选来的强
谢了,老铁,目前感觉也只有这个方法最合适了,在此万分感谢。
bootstrap-fileinput支持的浏览器:https://caniuse.com/#search=multiple%20file
其实我建议ie11以下的就不管了 如果非要支持ie8或者ie9,试试下面这款
http://www.jq22.com/jquery-info230
嗯,知道了,万分感谢,主要上帝在用,没办法啊。