下面小编就为大家分享一篇快速解决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>
以上这篇快速解决ajax请求出错状态码为0的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程学习网。
本文标题为:快速解决ajax请求出错状态码为0的问题
基础教程推荐
- JavaScript函数this指向问题详解 2023-08-12
- html网页中使用希腊字母的方法 2022-09-21
- JavaScript开发简单易懂的Svelte实现原理详解 2023-08-12
- ajax异步加载图片实例分析 2022-12-18
- Ajax实现简单下拉选项效果【推荐】 2022-12-28
- Ajax实现关键字联想和自动补全功能及遇到坑 2023-02-23
- vue在install时node-sass@4.14.1 postinstall:node scripts/build.js错误解决 2023-07-09
- 使用HTML5中postMessage知识点解决Ajax中POST跨域问题 2022-10-17
- AJAX实现数据的增删改查操作详解【java后台】 2023-02-23
- 【vue】三种获取input值的写法 2023-10-08
