位置: 编程技术 - 正文

jQuery+formdata实现上传进度特效遇到的问题

编辑:rootadmin

推荐整理分享jQuery+formdata实现上传进度特效遇到的问题,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

总结我做HTML5文件上传插件遇到的技术问题

先贴上源码:fileupload-html5.js(PS:公司使用seajs框架)

问题列表

1. JQUERY.AJAX没有监听上传进度的ONPROGRESS事件。

2. XMLHTTPREQUEST(XHR)跨域

问题解答

1. JQUERY没有给出ONPROGRESS事件的接口,必须从其他接口中找到原生XHR对象。

jQuery.ajax()返回的是jqXHR对象。jqXHR模仿XHR(原生),但没有模仿实现XHR的所有方法和属性(如:.upload),即使jqXHR增加了一个特有方法(如:.promise())。所以jqXHR并不是XHR的超集。

XHR的upload属性指向XMLHttpRequestUpload(IE是XMLHttpRequestEventTarget),该对象的onprogress事件可以监听上传进度。既然jQ没有给出这个功能的api,但jQ某些数据上传方式是使用XHR的,所以我们可以从其它api中找到XHR。在XHR发送数据之前绑定onprogress事件可以实现上传进度功能。

jQuery+formdata实现上传进度特效遇到的问题

我从OPTIONS参数配置中找到两个与XHR有关的属性:

- XHR:回调创建XMLHTTPREQUEST对象。

xhr()返回值是XHR,提供给jQ使用,即发送数据就是用这个XHR。我们可以通过xhr创建一个回调函数覆盖它,同样返回XHR,但在此绑定onprogress事件。

所以我们应该这样做:

- XHRFIELDS:一对“文件名-文件值”组成的映射,用于设定原生的 XHR对象。

xhrFields属性指向jQ内部创建的XHR,我们可以根据xhrFields获得XMLHttpRequest。由于xhrFields的值只能是json对象,所以不能以下面方式获取。

我们可以借助XHR的onsendstart事件,如下:

2. XMLHTTPREQUESTⅡ(XHR)支持跨域,但需要后台允许。

根据后台给的接口,我需要增加一个参数cros。但我将这个参数与文件同事提交,却提示跨域限制。最后将这个参数放在url才行。

原来XHR跨域是有两次请求的,第一次是验证请求,浏览器根据请求目的地址自动发出options请求。若通过,才能发出自定义的post请求。所以将参数放在post请求里,第一次请求没有cros参数,即不能通过。

浅析jQuery Ajax请求参数和返回数据的处理 刚接触学会用jQueryajax的时候,觉得真东西好神奇,这样就可以把数据取回来了啊。然后我可以把取回来的数据渲染到页面上,一颗赛艇。之前很早接触

jQuery实现验证年龄简单思路 这段代码假定环境是一个ID为age-form的form,三个ID分别为day,month,year。$("#age-form").submit(function(){varday=$("#day").val();varmonth=$("#month").val();varyear=$("#year").val(

jQuery使用contains过滤器实现精确匹配方法详解 本文实例讲述了jQuery使用contains过滤器实现精确匹配的方法。分享给大家供大家参考,具体如下::contains选择器选取包含指定字符串的元素。该字符串可

标签: jQuery+formdata实现上传进度特效遇到的问题

本文链接地址:https://www.jiuchutong.com/biancheng/382997.html 转载请保留说明!

上一篇:JQuery EasyUI的使用(jquery easy ui)

下一篇:浅析jQuery Ajax请求参数和返回数据的处理

  • 税金及附加都包含什么
  • 印花税都有啥
  • 附加税减半征收的条件
  • 国有股权无偿划转协议
  • 啤酒消费税在那里征收
  • 公司股东和自然人股东可否代持股权
  • 有两处收入的怎么报个税汇算清缴
  • 发票没有纳税人识别号能开吗
  • 个人资金借给企业
  • 营改增前未完工的老项目可以开专票吗
  • 一般纳税人开技术服务发票
  • 不征税的政府补助如何开票
  • 自然人出租房屋增值税税率
  • 哪些出口业务不能做
  • 企业上月份销售收入在本月份发生销售折让时
  • 企业长期股权投资
  • 汇算清缴报告和审计报告一样吗
  • 销售单怎么设置打几行
  • 个人使用过的设备有哪些
  • 月末汇兑损益怎么算
  • 小微企业工业企业认定标准
  • 购入黄金产品怎么入账
  • 鸿蒙系统通知栏界面怎么打开
  • 苹果手机清理内存怎么清理微信内存
  • 编写守护进程
  • 专业初审
  • 企业收到政府奖励会计分录
  • 峡谷的人
  • 技术安装工人包食宿
  • 年中建账年初余额怎么录入
  • 基训包括哪些
  • 伪类的常见类型
  • 总公司中标后走账怎么办
  • 进项税额转出可以为负数吗
  • 接待客人的场合
  • php array_fill
  • php变量名称中可以包含哪些元素
  • 无偿受让股权是利好吗
  • 无退税产品出口征税
  • 合同权益转让 范本
  • sqlserver 判断函数
  • 实行自行申报的项目有哪些
  • 什么是保函保证金
  • 无形资产如何计提减值
  • 应缴国库款和应缴专户款的区别
  • 企业亏损为什么还继续
  • 高新技术企业认定条件
  • 进项发票已入账进项税,但是未抵扣怎么办
  • 原始凭证按什么分
  • 不属于投资性房地产项目有自用房地产作为存货的
  • 发票抬头是个人税号怎么填
  • 滞纳金的收取范围是什么
  • 期间费用率怎么算
  • 公司刚成立如何做账
  • 销售费用包括哪些内容?其明细科目有哪些?
  • 支票取钱不是本人要带什么
  • 商品流通企业有哪些企业
  • mysql5.7版本下载
  • mysql修改密码错误
  • vista ui
  • video for windows是什么
  • centos下netconfig 的安装方法
  • 32.exe 什么病毒
  • 微软今天正式停产了吗
  • win7无线网络连接不上怎么解决方法
  • linux wc-w
  • win7无法远程桌面win10
  • win7开始菜单中的应用程序图标隐藏了
  • 安卓 图形api
  • linux中crontab
  • js中生成随机数
  • Python爬取微信视频号
  • 基于javascript的毕业设计选题
  • JavaScript基本语法与页面对象的应用
  • 陕西省税务局电子税务局官网
  • 税控盘专票作废流程
  • 福建通用定额发票查询
  • 买车开增值票是什么意思
  • 2023年车辆购置税优惠政策有哪些
  • 如何用微信进行社保认证
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设