首頁 >後端開發 >php教程 >javascript - h5多张图片上传,在移动端的解决方法?

javascript - h5多张图片上传,在移动端的解决方法?

WBOY
WBOY原創
2016-07-06 13:52:531383瀏覽

最近项目里要做一个微信端的投票功能,里面涉及到多图上传,我想办法用FileReader做出来了,在pc端测试的时候正常运行,但是在微信端遇到了各种坑,求解答,下面是我的问题和代码
遇到的问题:
1、在安卓端的时候多选选不上
2、在ios端的时候多选选上了,但是会卡在错误提示那里,就是下面代码的“return alert("上传的图片格式不正确,请重新选择")”,

这是html代码

<code><div class="AddInpnt fl">
    <input type="file" class="File" id="file_input" multiple>
</div></code>

这是js代码

<code>    window.onload = function(){
        var input = document.getElementById("file_input");
        var result,div;
 
        if(typeof FileReader==='undefined'){
            result.innerHTML = "抱歉,你的浏览器不支持 FileReader";
            input.setAttribute('disabled','disabled');
        }else{
            input.addEventListener('change',readFile,false);
        }    
        function readFile(){
            for(var i=0;i<this.files.length if return alert var reader="new" filereader reader.readasdataurl reader.onload="function(e){" result='<div class="PicInput fl" id="PicInput"><img src="'><span class="DelInput"></span>';
                    div = document.createElement('div');
                    div.innerHTML = result;
                    document.getElementById('PicUpload').appendChild(div);
           }
            }
        }
    }</this.files.length></code>

回复内容:

最近项目里要做一个微信端的投票功能,里面涉及到多图上传,我想办法用FileReader做出来了,在pc端测试的时候正常运行,但是在微信端遇到了各种坑,求解答,下面是我的问题和代码
遇到的问题:
1、在安卓端的时候多选选不上
2、在ios端的时候多选选上了,但是会卡在错误提示那里,就是下面代码的“return alert("上传的图片格式不正确,请重新选择")”,

这是html代码

<code><div class="AddInpnt fl">
    <input type="file" class="File" id="file_input" multiple>
</div></code>

这是js代码

<code>    window.onload = function(){
        var input = document.getElementById("file_input");
        var result,div;
 
        if(typeof FileReader==='undefined'){
            result.innerHTML = "抱歉,你的浏览器不支持 FileReader";
            input.setAttribute('disabled','disabled');
        }else{
            input.addEventListener('change',readFile,false);
        }    
        function readFile(){
            for(var i=0;i<this.files.length if return alert var reader="new" filereader reader.readasdataurl reader.onload="function(e){" result='<div class="PicInput fl" id="PicInput"><img src="'><span class="DelInput"></span>';
                    div = document.createElement('div');
                    div.innerHTML = result;
                    document.getElementById('PicUpload').appendChild(div);
           }
            }
        }
    }</this.files.length></code>

微信端可以使用微信的上传图片接口...

我们原来项目有用ajaxfileupload实现,在微信端应该是没问题的,如果是原生混合架构的话,部分机型比如小米是不支持的。

PS:我貌似看错题目了,是要同时多选图片,我以为是多次选择多张,题主忽略吧。

安卓是不支持多图选择的,这个坑以前踩过。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn