ajaxfileupload.js上传文件兼容IE7及以上版本

要兼容IE789,要修改ajaxfileupload.js;要将此处的代码替换掉

if(window.ActiveXObject) {  
    var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');  
     if(typeof uri== 'boolean'){  
         io.src = 'javascript:false';  
     }  
     else if(typeof uri== 'string'){  
         io.src = uri;  
     }  
 }  

替换为:

var isIE = navigator.userAgent.indexOf("MSIE");
var ieVersion= isIE>-1?naigator.userAgent.substring(isIE+5,isIE+6):false;
if(window.ActiveXObject) {  
   if(ieVersion=="9" || naigator.userAgent.substring(isIE+5,isIE+7)=="10"){  
        var io = document.createElement('iframe');  
        io.id = frameId;  
        io.name = frameId;  
    }else if(ieVersion=="6" ||ieVersion=="7" || ieVersion=="8"){  
        var io = document.createElement('<iframe id="' + frameId + '" name="' + frameId + '" />');  
        if(typeof uri== 'boolean'){  
            io.src = 'javascript:false';  
        }  
        else if(typeof uri== 'string'){  
            io.src = uri;  
        }  
    }  

在html中先引入jquery,再引入ajaxfileupload.js

html代码

<input type="file" id="uploadFile" name="uploadFile"/>

js代码

 $.ajaxfileupload({
        utl:"接口",
        secureuri:false,//是否需要安全协议,一般设为false
        fileElementId:"uploadFile",//文件上传域的ID
        dataType:"HTML",//返回值类型,一般为json,但是在低版本浏览器下会把json看成文件提示下载,就会没有回调函数,后台也要设置成"text/html"
        success:function(data){
            if(typeof(data.error)!="undefined"){
                if(data.error!=""){
                    alert(data.error);
                }else{
                    alert(data.msg);
                }
            }
        },
        error:function(data,status,e){
            alert(e);
        }
    })
原文地址:https://www.cnblogs.com/lengyue0030/p/6885543.html