JQuery无刷新上传之ajaxFileUpload

一、ajaxFileUpload是一个异步上传文件的jQuery插件。   
  
   
  
  语法:$.ajaxFileUpload([options])   
  
  options参数说明:   
  
1、url            上传处理程序地址。     
2、fileElementId       需要上传的文件域的ID,即<input type="file">的ID。   
3、secureuri        是否启用安全提交,默认为false。    
4、dataType        服务器返回的数据类型。可以为xml,script,json,html。如果不填写,jQuery会自动判断。   
5,success        提交成功后自动执行的处理函数,参数data就是服务器返回的数据。   
6,error          提交失败自动执行的处理函数。   
7,data            自定义参数。这个东西比较有用,当有数据是与上传的图片相关的时候,这个东西就要用到了。   
8, type            当要提交自定义参数时,这个参数要设置成post   
  
错误提示:   
  
1,SyntaxError: missing ; before statement错误   
  如果出现这个错误就需要检查url路径是否可以访问   
2,SyntaxError: syntax error错误   
  如果出现这个错误就需要检查处理提交操作的服务器后台处理程序是否存在语法错误   
3,SyntaxError: invalid property id错误   
  如果出现这个错误就需要检查文本域属性ID是否存在   
4,SyntaxError: missing } in XML expression错误   
  如果出现这个错误就需要检查文件name是否一致或不存在   
5,其它自定义错误   
  大家可使用变量$error直接打印的方法检查各参数是否正确,比起上面这些无效的错误提示还是方便很多。  


<html>  
<head>  
    <script src="/jquery-1.7.1.js" type="text/javascript"></script>  
    <script src="/ajaxfileupload.js" type="text/javascript"></script>  
   <script type="text/javascript">  
        $(function () {   
            $(":button").click(function () {   
                if ($("#file1").val().length > 0) {   
                   ajaxFileUpload();   
                }   
                else {   
                   alert("请选择图片");   
               }   
            })   
        })   
        function ajaxFileUpload() {   
            $.ajaxFileUpload   
            (   
                {   
                    url: '/Home/Upload', //用于文件上传的服务器端请求地址   
                    type: 'post',   
                    data: { Id: '123', name: 'lunis' }, //此参数非常严谨,写错一个引号都不行   
                   secureuri: false, //一般设置为false   
                   fileElementId: 'file1', //文件上传空间的id属性  <input type="file" id="file" name="file" />  
                   dataType: 'json', //返回值类型 一般设置为json   
                    success: function (data, status)  //服务器成功响应处理函数   
                   {   
                        alert(data);   
                        $("#img1").attr("src", data.imgPath1);   
                        alert("你请求的Id是" + data.Id + "     " + "你请求的名字是:" + data.name);   
                        if (typeof (data.error) != 'undefined') {   
                            if (data.error != '') {   
                                alert(data.error);   
                            } else {   
                                alert(data.msg);   
                            }   
                        }   
                    },   
                    error: function (data, status, e)//服务器响应失败处理函数   
                    {   
                        alert(e);   
                   }   
               }   
           )   
            return false;   
        }   
    </script>  
</head>  
<body>  
    <input type="file" id="file1" name="file" />  
 
    <input type="button" value="上传" />  
    <img id="img1" alt="上传成功啦" src="" />  
  
</body>  
</html>

相关推荐