jquery.form.js后台提交成功,但没触发回调函数

jquery.form.js,一个方便的小插件,可以很好的实现异步上传文件。

但在使用过程中,总会出现一些诡异的现象,比如提交成功但没触发回调函数。

此时你设置error回调,就会发现,报错了!!!然后去网上查,大多数都是错误的。

至于为啥报错,我就这点讲述我知道的几种可能。

1,返回的数据格式不对,如果加了dataType这个参数,js会检验返回的格式,如果返回格式错误,就会报错,所以用默认的就好。

解决方法:去掉dataType

2返回的json格式不对,也会报错

解决方法:检验json格式

3本机:跨域操作!大多都是因为这个原因出错的!(跨域的定义自己百度,这个不会有眼子的)

当你在本机做集群,或者部署多个相同项目,就很有可能在你不知道的情况下跨域操作(cookies出现的诡异现象也极有可能是跨域导致的,本帖子只讲插件上传问题)。

解决方法:以java为例:添加Response响应头 “Response.setHeader("Access-Control-Allow-Origin", "*");”或“ Response.setHeader("Access-Control-Allow-Origin", "http:ip:端口");”,

4服务器:跨域操作,负载均衡,部署集群,跨域操作时家常便饭

解决方法:和上面的一样

备注:打开浏览器,按f12.慢慢调试比上网查快多了


评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值