今天在使用 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+Servlet实现的数据处理显示功能。分享给大家供大家参考,具...
大家好,我是狂聊君。 今天来聊一聊 Mysql 缓存池原理。 提纲附上,话不多说,直...
问题:我们在做flex的开发中,如果用到别人搭建好的框架,而别人的server名称往...
在Flash Player 10.1及以上版本中,adobe新增了全局错误处理程序UncaughtErrorEv...
前言 项目开发中不管是前台还是后台都会遇到烦人的null,数据库表中字段允许空值...
来源:DeepenStudy 漏洞文件:js.asp % Dimoblog setoblog=newclass_sys oblog.a...
本文转载自微信公众号「SH的全栈笔记」,作者SH。转载本文请联系SH的全栈笔记公...
本文转载自微信公众号「SQL数据库」,作者丶平凡世界 。转载本文请联系开发公众...
CKeditor,以前叫FCKeditor,已经使用过好多年了,功能自然没的说。最近升级到3....
idea官方推送了2020.2.4版本的更新,那么大家最关心的问题来了,之前激活idea202...