首页 > 开发 > AJAX > 正文

快速解决ajax请求出错状态码为0的问题

2024-09-01 08:30:59
字体:
来源:转载
供稿:网友

今天在使用 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> 

以上这篇快速解决ajax请求出错状态码为0的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表