网络编程 
首页 > 网络编程 > 浏览文章

jQuery通过ajax方法获取json数据不执行success的原因及解决方法

(编辑:jimmy 日期: 2024/11/19 浏览:3 次 )

1.jquery通过ajax方法获取json数据不执行success回调

问题描述:jquery通过ajax方法获取json数据不执行success回调方法

问题原因:json格式存在问题或不符合标准写法,导致总是执行error回调方法

解决方案:使json格式务必符合下述3个标准写法:

    1)键名称:用双引号括起;

    2)字符串:用双引号括起;

    3)数字,布尔值不需要使用双引号括起 ;

注意:一定是双括号!

2.jQuery中ajax使用json数据类型总是跳过success执行error语句

执行函数

error : function(XMLHttpRequest, textStatus, errorThrown) {
//这个error函数调试时非常有用,如果解析不正确,将会弹出错误框
    alert(XMLHttpRequest.responseText); 
alert(XMLHttpRequest.status);
alert(XMLHttpRequest.readyState);
alert(textStatus); // parser error;
}

就明白错误信息了;

弹出的框里显示:

<!DOCTYPE html PUBLIC "-//W3C //DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD /xhtml1-transitional.dtd">以 及<"1.0" encoding="gb2312" "color: #ff0000">3.$.ajax()中的URL跨域时,总是不执行success,老进入error

1)我加上ServletActionContext.getResponse().setHeader("Access-Control-Allow-Origin", "*");

解决跨域问题,就顺利进入success了

2)dataType:"json",

去掉 看能进success 不 。

dataType 是预期服务器返回过来的信息类型 。

原因:返回的数据类型一定要符合定义的数据类型。即如果你定义的 dataType 是 json 类型的,那么返回来的数据一定是 json 才可以,平且不然就会执行 error 里的程序块儿。

(1) 同时需要特别的注意返回的JSON数据是否是严格的JSON格式.

(2) 也应该严重关切当后台返回的是一个List 数据(List当中的数据是Json格式)时,有没脏数据即不是严格的JSON格式。

以上所述是小编给大家介绍的jQuery通过ajax方法获取json数据不执行success的原因及解决方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的,在此也非常感谢大家对网站的支持!

上一篇:原生JS实现的放大镜效果实例代码
下一篇:Bootstrap分页插件之Bootstrap Paginator实例详解
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap