• 沙里软件

  • ShaliSoft.com [手机站]   办公桌收纳抽屉
  • 首页
  • 博文
  • 演示
  • 管理
  • jQuery插件之ajaxFileUpload实现跨域无刷新上传

    网络   2014/10/31 15:53:56

    一、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
    9,fileFilter:       可选,限定上传文件的格式(.jpg,.bmp,.gif,.png)

    10,fileSize:       可选,0 为无限制(IE浏览器不兼容) 


    错误提示:


    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直接打印的方法检查各参数是否正确,比起上面这些无效的错误提示还是方便很多。


     


      使用方法:


      第一步:先引入jQuery与ajaxFileUpload插件。注意先后顺序,这个不用说了,所有的插件都是这样。


     

      <script src="jquery-1.7.1.js" type="text/javascript"></script>
        <script src="ajaxfileupload.js" type="text/javascript"></script>

      第二步:HTML代码:

    <body>
        <p><input type="file" id="file1" name="file" /></p>
        <input type="button" value="上传" />
        <p><img id="img1" alt="上传成功啦,你妈个B啦" src="" /></p>
    </body>

      第三步:JS代码



       

    <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 () {
                    ajaxFileUpload();
                })
            })
            function ajaxFileUpload() {
                $.ajaxFileUpload
                (
                    {
                        url: '/upload.aspx', //用于文件上传的服务器端请求地址
                        secureuri: false, //是否需要安全协议,一般设置为false
                        fileElementId: 'file1', //文件上传域的ID
                        dataType: 'JSON', //返回值类型 一般设置为json
                        success: function (data, status)  //服务器成功响应处理函数
                        {
                            $("#img1").attr("src", data.imgurl);
                            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>

        第四步:后台页面upload.aspx代码:



           

    protected void Page_Load(object sender, EventArgs e)
            {
                HttpFileCollection files = Request.Files;
                string msg = string.Empty;
                string error = string.Empty;
                string imgurl;
                if (files.Count > 0)
                {
                    files[0].SaveAs(Server.MapPath("/") + System.IO.Path.GetFileName(files[0].FileName));
                    msg = " 成功! 文件大小为:" + files[0].ContentLength;
                    imgurl = "/" + files[0].FileName;
                    string res = "{ error:'" + error + "', msg:'" + msg + "',imgurl:'" + imgurl + "'}";
                    Response.Write(res);
                    Response.End();
                }
            }


    ajaxFileUpload.js 下载

    阅读(2287) 分享(0)

    上一篇: 通过iframe实现无刷新跨域异步上传图片
    下一篇: jQuery:ajaxfileupload.js多文件上传-传值-跨域

  • 精彩推荐

    ◆ ASP.NET 导入excel
    ◆ PHP5.4 + IIS + Win7的配置
    ◆ MySQL5.5安装图解教程
    ◆ 使用new Image()打点时的一个注意事项
    ◆ OutputCache各参数的说明
    ◆ asp.net 格式化显示时间为几个月,几天前,几小时前,几分钟前,或几秒前
    ◆ MySQL性能分析及explain的使用
    ◆ 为什么iPhone只允许升级,不允许降级
    ◆ 微软澄清:盗版用户无法免费升级Win 10
    ◆ 谷歌致歉:已删除地图上机器人向苹果Logo嘘嘘照片
  • 用心做事 不能唯利是图

    • 吊儿
    • 用QQ联系我17905772
  • 搜索


  • 最新文章

    • 导出Excel 格式 mso-number-format
    • 服务器iis支持tls1.2,windows server 2008 r2 中IIS启用TLS 1.2(安装SSL后用TLS 1.2)
    • MySQL配置优化
    • EditPlus 添加文件比较工具winmerge
    • 滚动悬浮固定JS特效

  • 热门文章

    • php sso单点登录实现代码
    • 中国菜刀(China chopper) 最新黑客工具
    • redis.conf中文版(基于2.4)
    • 搜索引擎名单大全
    • php图片上传类,支持加水印,生成略缩图

  • 最新图库


  • 最新评论


  • 友情链接

  • 沙里软件

  • 最近访客

    Powered by ShaliSoft.com 豫ICP备13008529号

    免责声明:本站部分内容来源于互联网,转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,不为其版权负责,也不构成任何其他建议。如果发现侵犯版权,联系QQ17905772进行删除。