【转】jQuery 的 ajax 方法,返回结果 readyState=4 并且 status=200 时,还进 error 方法

今天在使用jquery.ajax方法去调用后台方法时,ajax中得参数data类型是"JSON",后台DEBUG调试,运行正常,返回正常的结果集,但是前端一直都进到ajax的error方法,百思不得其解,后要一探究竟,在error方法的参数中加了data后,发现data中的readyState = 4 并且 status=200,这两个状态也证明ajax访问没有问题,没有出现异常。回过头发现我在后台返回的是字符串,但并不是标准的json格式的字符串,所以前端js进入不了success。无法解析为json格式的数据,所以报错进error。通过后台将结果集转成json格式字符串即可。
————————
原文:https://blog.csdn.net/u013412066/article/details/50624966

原文地址:https://www.cnblogs.com/xwgli/p/9815539.html

时间: 2024-08-01 04:37:22

【转】jQuery 的 ajax 方法,返回结果 readyState=4 并且 status=200 时,还进 error 方法的相关文章

jQuery插件AjaxFileUpload实现ajax文件上传时老是执行error方法 问题原因

今天在用jQuery插件AjaxFileUpload实现ajax文件上传时,遇到一个问题,如图: 老是执行error,无法执行succes方法,追踪ajaxfileupload.js源码发现: 当执行if(type=="json")    eval("data = "+data);会抛出异常,导致在处理异常的时候将status = "error" 因此一直执行error方法. 上网查询,得知eval函数是用来执行一段js代码,而并不是如我所想的反

前台ajax请求php后台返回成功却进error方法解决

最近几天一直都在解决error问题,周末都没能好好过,悲痛万分,想逃走??..... 一.悲痛的开端 项目用jQuery的ajax方法请求php后台,前台代码写的没有问题,后台返回的json数据大概也是对的(猜的,后来验证了json是对的),然后悲剧就如约而至: 先看核心代码: $.ajax({ type:"POST", url:"{:U('City/adds')}", data:{}, dataType: 'json', success:function(data

Struts2+Jquery实现ajax并返回json类型数据

主要实现步骤如下: 1.JSP页面使用脚本代码执行ajax请求 2.Action中查询出需要返回的数据,并转换为json类型模式数据 3.配置struts.xml文件 4.页面脚本接受并处理数据 网上看到很多关于Struts2+ajax+jquery+json的例子,但是很多都不完整,也看不明白,主要原因是返回jsno类型数据和原来的返回字符串类型数据不一样,并且网友们实现步骤没有说清楚,让初学的朋友捉摸不透到底该怎么做. 我做了个简单的demo,供网友们学习,最后我会附上链接,可以下载整个de

jquery中ajax如何返回值到上层函数的方法以及对于js处理json对象方法的记录

①在我们做前端js处理的时候我们经常会将一些公用的js方法封装起来,方便别的地方调用,但是我们要做的是需要将请求返回的值传递给调用者,这里我记录了在js中采用ajax方法获取后台数据并返回给调用者的方法,我们平时使用ajax的方法基本为如: <span style="font-family:FangSong_GB2312;font-size:18px;">function AutoGetOpenid(){ var personJson; $.ajax({ url : &qu

jquery发送ajax请求返回数据格式

1 jquery向服务器发送一个ajax请求后,可以返回多种类型的数据格式,包括:html,xml,json,text等. 2 3 1.html格式的数据 4 5 "<div class='comment'><h6> "+username+" :</h6><p class='para'> "+content+" </p></div>" 6 7 服务器端返回数据格式是html片

Python3基础 用索引值访问time方法返回来的元组中的年月日时分秒

镇场诗: 诚听如来语,顿舍世间名与利.愿做地藏徒,广演是经阎浮提. 愿尽吾所学,成就一良心博客.愿诸后来人,重现智慧清净体.------------------------------------------ code: import time myTime=time.localtime() print(myTime[0],"年") print(myTime[1],"月") print(myTime[2],"日") print(myTime[3]

jQuery的ajax中return语句无法返回值

今天在做一个新需求的时候,用到jQuery的ajax来返回一个查询结果: 但是调用这个方法的时候,data有数据,调用的地方获取到的却一直都是undefined,在网上搜索了一些资料,找到了问题所在,解决方法如下: 1:属性中需要增加async:false; 2:在ajax之前声明一个变量,在success中,将data赋值给这个变量,并在ajax之后,return这个变量; 因为如果是异步执行的话,也许查询结果还没有返回来,js这边就把data返回回去了,但是只添加async:false属性却

通过原生js的ajax或jquery的ajax获取服务器的时间

在实际的业务逻辑中,经常是与时间相关的,而前端能获得的时间有两个:客户端的时间,服务器的时间.客户端时间通过 javascript中的Date对象可以获取,如 Java代码   var dt = new Date(); var tm = dt.getTime(); 那么tm就是客户端的时间,另外也可以通过对应的getFullYear(),getMonth(),getDate()取到对应的年月日等...但这个时间可靠吗?好吧,那取服务器时间吧经常用到的是后台写一个php,jsp,cgi,asp..

初识jQuery的ajax

前面有一篇博文,写的是ajax请求时,返回json字符串和json数组的场景,今天,将原始的ajax修改为jQuery版的ajax. jQuery对ajax做了很多的封装,使得ajax使用起来非常的方便,省去了很多代码. 闲话少说,直接看代码吧. 代码 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!