位置: 编程技术 - 正文

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请求参数和返回数据的处理

  • 国家税务总局操作指引
  • 解除劳动一次性补偿金怎么记账
  • 税务局三代手续费政策
  • 鉴证服务的税率有哪些
  • 未交增值税最后到哪去了
  • 报税利润表的第二季度本期金额本年累计金额是什么
  • 减资账务处理基准日 会计视野
  • 滴滴普通发票可以作废吗
  • 土地出让金返还政策文件
  • 电子承兑汇票付款流程
  • 被强制执行的款怎么记账
  • 小规模纳税人按月申报还是按季申报
  • 增值税发票查验平台官网网络异常
  • 纳税人为ETC卡充值取得财政票据进项税额抵扣问题
  • 烟草企业发生的广告和宣传费在当年营业收入15
  • 企业所得税看哪里
  • 个人缴纳的公积金可以贷款吗
  • 违约支付工程款的违约金
  • 来料加工贸易是什么工作
  • 金融企业哪些呆账损失可以在税前扣除?
  • 赊销的账务处理流程
  • 私募股权投资基金管理办法最新
  • 推广的产品
  • 资源管理器一直弹出
  • el-cascader动态加载多级
  • 本月无生产,有折旧怎么办
  • 公司银行贷款能贷多少
  • php创建二维数组
  • PHP:Memcached::decrementByKey()的用法_Memcached类
  • 软件入无形资产金额
  • ecshop功能
  • PHP:pcntl_waitpid()的用法_PCNTL函数
  • 破产清算子公司
  • 多开票金额会计分录
  • 非营利组织营利包括哪些
  • 企业成立多久可以注销
  • 开发票如何计算税率
  • 折旧和摊销的区别通俗
  • springboot用法
  • 工会经费的使用范围有哪些
  • 帝国cms使用手册
  • Python怎么转化为中文
  • 帝国cms自定义列表
  • pnpnpn的工作原理
  • 高速费会计分录怎么写
  • 预缴分包抵扣,所有分包都可以抵扣吗
  • 怎么看是不是真发
  • 物业合并利润表怎么填
  • 增值税普通发票查询
  • 预收账款和预付账款的区别
  • 将自产的应税消费品用于连续生产非应税消费品
  • 债券投资包含哪些
  • 应付账款会计分录怎么写
  • 固定资产被盗报警
  • 增值税专用发票的税率是多少啊
  • 机械设备预付款比例
  • 私人借款条怎么写合法
  • 退货只能退一半价钱合理吗
  • 营业账簿如何缴纳税款
  • 工会经费计税依据是应发还是实发
  • php中常用的几个字符
  • 使用二氧化碳灭火器时人应该站在什么位置
  • linux以root用户登录
  • u盘怎么安装驱动程序
  • linux命令i
  • linux软件类型
  • win8怎么改文件格式
  • lnmp php
  • win8怎么找开始程序
  • 趣谈 linux 操作系统
  • 苏州大学附属第一医院占地面积
  • 用python三角形
  • js模拟实现new
  • python教程目录
  • 对税务工作提出意见建议
  • 湖南国税电子税务局官方网
  • 珠海的教育水平在全省的排名
  • 如何运用投资组合理论
  • 税务会计业务处理流程
  • 船舶吨税的税收优惠
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设