博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jquery通过ajax方法获取json数据不执行success
阅读量:7124 次
发布时间:2019-06-28

本文共 1018 字,大约阅读时间需要 3 分钟。

1.

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

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

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

         1)键名称:用双引号括起;
       2)字符串:用双引号括起;
       3)数字,布尔值不需要使用双引号括起 ;

注意:一定是双括号!

2.

 执行函数
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">以 及<?xml version="1.0" encoding="gb2312" ?>这两句话,虽然不清楚为什么,我删除之后,就成功执行 success了

3.

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格式。

转载地址:http://dnael.baihongyu.com/

你可能感兴趣的文章
SCVMM 2012 SP1 安装与配置指南(四)配置SMI-S提供程序来添加iSCSI存储
查看>>
Spring 的优秀工具类
查看>>
MySQL源码编译安装(CentOS-6.6+MySQL-5.6)
查看>>
CentOS 7 基于fastcgi 的lamp
查看>>
linux大神必备技能
查看>>
C语言:不使用(a+b)/2这种方式(会溢出),求两个数的平均值
查看>>
2.Python安装
查看>>
HttpUrlConnection Get 和Post请求
查看>>
split命令
查看>>
apache配置默认虚拟主机
查看>>
CSS3实现的图片加载动画效果
查看>>
Navitcat连接远程mysql服务器连不上
查看>>
绝对干货!史上最全自媒体人发文渠道汇总(小编亲测)
查看>>
安卓7.0正式版怎么刷?安卓7.0正式版刷机方法
查看>>
TransferQueue实例
查看>>
nginx的port_in_redirect配置
查看>>
网络协议分析
查看>>
堆排序算法
查看>>
dovecot主要配置文件
查看>>
理解Javascript--作用域和赋值操作
查看>>