如何在ajax中使用error,相信很多没有经验的人都不知所措。因此,本文总结了出现问题的原因和解决方法,希望大家可以通过这篇文章来解决这个问题。
错误用法:1。当后台返回的数据类型与前台写入的数据类型不一致时使用;2.当异步请求同步异步问题时使用;3.当数据设置为空时使用;4.当传递的参数不是ajax支持的编码格式时使用。
本教程操作环境:windows10系统,jquery 3 . 2 . 1 3 . 2 . 1版,戴尔G3电脑。
ajax中error在什么时候使用
dataType错误(dataType用来指定后台返回参数的类型)
类型:后台返回的数据类型和前台写入的类型不一致会导致错误。
错误:jquery1.4之后,json的格式要求非常严格,json格式的错误会跳转到错误中。{“测试”:1}注意格式。
有时,当不需要返回值时,数据类型:“JSON”参数以模板格式设置。此时,当ajax正确传递该值时,会有一种特殊情况,即当200成功返回时会报告一个错误。
如果没有指定,jQuery会根据HTTP包的mime信息自动智能判断,比如XML的MIME类型会标识为XML。在1.4中,JSON将生成一个JavaScript对象,脚本将执行这个脚本。然后服务器返回的数据将根据这个值进行解析,然后传递给回调函数。可用值:
“xml”:返回一个XML文档,可以由jQuery进行处理。
“html”:返回纯文本HTML信息;插入dom时会执行包含的脚本标记。
“script”:返回纯JavaScript代码。结果不会自动缓存。除非设置了“缓存”参数。注意:如果是远程请求(不在同一个域中),所有的POST请求将被转换为GET请求。(因为它将使用DOM的脚本标签加载)
“json”:返回JSON数据。
“JSONP”: JSONP格式。当调用JSONP形式的函数时,比如“myurl?回调=?”JQuery会自动替换吗?是执行回调函数的正确函数名。
“text”:返回纯文本字符串。
async请求同步异步问题
异步默认为真(异步请求)。如果希望在执行另一个Ajax之前先执行一个Ajax,则需要设置async=false。
例如,您使用post请求将值传递到另一个页面的后台,但是一旦页面加载了您的ajax,它就已经被执行了,并且值的接收是在后台完成的,因此此时您不能请求数据,因此您可以考虑将ajax请求更改为同步。
data不能不写
当数据为空时,传递“{ 0 }”;否则,它将以xml格式返回。并提示解析器错误。data: "{} "
parsererror的异常也与Header类型有关。和编码头(' content-type : text/html;charset=utf8’);
传递的参数
是ajax必须支持的编码格式。
URL路径问题
路径不能有中文。
通常,我们可以通过分析error中的一些参数来判断错误的原因:
xmlhttprequest . readystates :状态代码
0-(未初始化)尚未调用send()方法。
1-(加载)已调用send()方法,并且正在发送请求。
2-(加载完成)send()方法的执行完成,所有响应内容都已收到。
3-(交互式)解析响应内容。
4-(完成)响应内容经过解析,可以在客户端调用。
XMLHttpRequest.status:调用http请求的状态。
请求状态很多,可以通过百度查询错误状态码。
XMLHttpRequest.responseText:返回错误消息。
如果发生错误,错误消息(第二个参数)可能是“超时”、“错误”、“未修改”和“parsererror”,除了得到null之外。
看完以上内容,你掌握了ajax中如何使用error了吗?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道,感谢您的阅读!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/156538.html