首页 > web前端 > js教程 > 正文

ajax请求出错状态码为0时应该如何处理

php中世界最好的语言
发布: 2018-03-30 15:44:37
原创
2996 人浏览过

这次给大家带来ajax请求出错状态码为0时应该如何处理,处理ajax请求出错状态码为0时的注意事项有哪些,下面就是实战案例,一起来看一下。

今天在使用 ajax 向后台请求数据时出现错误,提示状态码为 0 ,后台采用的是 spring mvc 架构

状态码为0是什么意思呢?查找了下,原来它意味着 (未初始化)即没有调用到send()方法,我原来代码如下 :

$.ajax({
url:"test",
type:"post",
data:{
  blogTitle : $("#form1 input").val(),
  blogType : $("#form1 option:selected").val(),
  article : htmlcontent
},
dataType: "json",
success: function(data,textStatus){
  if(data.flag == "success"){
    alert("发表成功!");
    window.location.href = 'http://www.baidu.com';
  }    
},
error: function(XMLHttpRequest, textStatus, errorThrown){
  alert(XMLHttpRequest.status);
  alert(XMLHttpRequest.readyState);
  alert(textStatus);
}
 });
登录后复制

仔细检查,好像没什么不对劲的啊,况且在后台都能正常接收发送的数据了,说明 ajax 还是发送了数据的,这是后台打印的相关参数信息

又一番思索,原来是表单出现了问题:

<form onsubmit="addBlog();">
//中间省略
<button type="submit">发表博客</button> 
</form>
登录后复制

可以看到,我在 button 标签添加了 type=”submit”属性,但这样做会产生新的一次表单点击提交,本来form 默认点击 button 时会产生一次提交 , button type=”submit” 时又会产生新第一次提交,导致 ajax 未执行完毕表单事件发生了改变。

解决方法: 将上面代码改为:

<form onsubmit="return false">
//中间省略
<button type="addBlog()">发表博客</button>
登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

实现改变状态和删除无刷新的Ajax+PHP代码

Ajax如何实现客户端异步调用服务端

以上是ajax请求出错状态码为0时应该如何处理的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板