Jquery Ajax xmlhttp请求成功问题
今天遇到了一个极其奇怪的问题,用各种工具检查都能看到服务器端返回了200,数据也是正常的,但是$.ajax 始终进不到success,郁闷啊,在网上找,
常见问题场景:
1.跨域;
2. $.ajax 没设置 dataType,及服务器端没设置respon.ContentType
3. Json结构错误;
第一第二很快就排除了,到了第三重新度了Json的定义:http://www.json.org/json-zh.html,重新复习了下Json的定义:
键值对:键为string,值(value)可以是双引号括起来的字符串(string)、数值(number)、true、false、 null、对象(object)或者数组(array)。这些结构可以嵌套。
原来定义的类型是
{isSuccess:true,message:'good'}
按照键的定义应该修改为
{'isSuccess':true,'message':'good'}
继续执行还不行,按照值的定义修改:
{'isSuccess':true,'message':"good"}
彻底郁闷了,这还不行
后面放下这里仔细看了对Json键值的规范,值要定义为带双引号的字符串,为什么是双引号,那么键呢,是不是需要?换成
{"isSuccess":true,"message":"good"}
直接通了。
Json的格式跟Javascript里面对象的区别就在这里,Json要求键,值必须是双引号!!
相关推荐
-
Jquery通过Ajax访问XML数据的小例子
页面js代码 复制代码 代码如下: $.ajax({ url : '...',type : 'POST',dataType : 'xml',error : function(xml) {alert("Error loading XML document" + xml);},success : function(xml) {$(xml).find("X").each(function(i) {alert($(this).attr("Xattr"))
-
一个很简单的jquery+xml+ajax的无刷新树结构(无css,后台是c#)
复制代码 代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; using System.Data.Linq; using System.Xml; using System.Xml.Linq; namespace WebApplication3 { public
-
jQuery 利用$.ajax 时获取原生XMLHttpRequest 对象的方法
废话不多说了,关键代码如下所示: <script> $('.screenshot_input').change(function (){ //获取file对象 即相当于可以直接post的$_FILES数据 var domFile = $(this)[0].files[0] var domForm = $('#testForm')[0] //将form对象直接作为参数 new FormData对象 var formData = new FormData(domForm); //追加file 对象
-
firefox下jquery ajax返回object XMLDocument处理方法
在firefox下使用jquery ajax处理struts2 返回json类型的时候,ajax执行成功返回结果为 [object XMLDocument]. 处理办法:在getWriter.print():前面加上一行代码 复制代码 代码如下: ServletActionContext.getResponse().setContentType("text/html;charset=UTF-8");
-
JQuery的ajax获取数据后的处理总结(html,xml,json)
1.html处理比较简单,直接输出即可.一般用$("jb51div").innerHTML等即可 2.json格式数据调用 复制代码 代码如下: $.ajax({ url : "/trundle/RawContentAction.getAjaxContent.act", data : "param1=22", dataType : "json",//这里的dataType就是返回回来的数据格式了html,xml,json ca
-
用JQuery 实现AJAX加载XML并解析的脚本
1,Content-Type 很多时候无法解析就是Content-Type的问题. 如果本身就是xml文件,请跳过这一步 动态生成的XML一定要将其设置为text/xml,否则默认就是text/html也就是普通的文本了. 常见语言的Content-Type设置 复制代码 代码如下: header("Content-Type:text/xml"); //php response.ContentType="text/xml" //asp response.setHea
-
Jquery Ajax解析XML数据(同步及异步调用)简单实例
复制代码 代码如下: $.ajax({ async: true, // 默认true(异步请求) cache: true, // 默认true,设置为 false 将不会从浏览器缓存中加载请求信息. type: "POST", // 默认:GET 请求方式:[POST/GET] dataType: "xml", //默认["xml&quo
-
jQuery+ajax读取并解析XML文件的方法
本文实例讲述了jQuery+ajax读取并解析XML文件的方法.分享给大家供大家参考,具体如下: ajax.xml: <?xml version="1.0" encoding="UTF-8"?> <stulist> <student email="1@1.com"> <name>zhangsan</name> <id>1</id> </student>
-
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
一.AjaxSample.aspx 处理业务数据,产生XML数据,供JqueryRequest.aspx调用,代码如下: 复制代码 代码如下: protected void Page_Load(object sender, EventArgs e) { string uid = Request.QueryString["username"]; string pwd = Request.QueryString["password"]; Response.Content
-
jquery $.ajax()取xml数据的小问题解决方法
开始的代码如下: 复制代码 代码如下: $.ajax({ type: "get", url: "Database/App_all.xml", dataType: "xml", timeout: 2000, beforeSend: function () {}, success: function (xml) { $(xml).find("app[id='id-1']").find("auther").app
随机推荐
- Swift中动态调用实例方法介绍
- JS iFrame加载慢怎么解决
- PHP中多线程的两个实现方法
- 为用户批量建立私人文件夹并设定权限的批处理
- java中正则表达式实例详解
- 数组重排序(如何将所有奇数都放在所有偶数前面)的深入分析
- 原生js实现数字字母混合验证码的简单实例
- asp.net DataSet进行排序
- PHP序列化操作方法分析
- vue通过watch对input做字数限定的方法
- Mysql创建通用设备管理信息系统数据库
- php中几种常见安全设置详解
- BootstrapTable+KnockoutJS相结合实现增删改查解决方案(三)两个Viewmodel搞定增删改查
- Jquery增加鼠标中间功能mousewheel的实例代码
- jQuery增加和删除表格项目及实现表格项目排序的方法
- Java插入修改删除数据库数据的基本方法
- java根据模板动态生成PDF实例
- Android异常 java.lang.IllegalStateException解决方法
- 深入解析System.load 与 System.loadLibrary
- location.href语句与火狐不兼容的问题