您的位置:首页 > Web前端 > JQuery

jquery.form.js处理成功但未执行回调

2016-05-05 17:30 447 查看
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.慢慢调试比上网查快多了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: