jQuery $.post()返回类型为json时不进入回调函数的原因及解决方法

简介:

这真是个让人特别抓心找挠肝的问题,真的差点被这个问题逼的放弃去使用json作为返回类型,而是去用html,但是有的时候就是要较汁一下。(即便现在问题解决了,我还是想说句“妈蛋”,来发泄一下)

其实主要还是自己对json的不够了解,但是很纳闷,网上对路的解决方法几乎没有。所以虽然问题很小,但是还是想要分享出来,希望能帮到需要的人。

首先$.post()格式如下:

1
$.post(url,data,success(data, textStatus, jqXHR),dataType)

参数描述

url 
必需。规定把请求发送到哪个 URL。

data  
可选。映射或字符串值。基本是json格式。

success(data, textStatus, jqXHR)      
可选。请求成功时执行的回调函数。

dataType

可选。规定预期的服务器响应的数据类型。默认执行智能判断(xml、json、script 或 html)。

示例:

1
2
3
4
5
6
7
8
                 $.post( "../../xxx/ajaxPost.aspx" ,
                     {
                         action:  "xxx" ,
                         id: xxx
                     }, function  (data,status) {
                         alert( "name=" +data.name+ ",age=" +data.age);
                     },
             "json" );

打断点可以正常进入到后台。直到想要的操作完成,组成新的json数据,利用Response.Write()返回,但是无论如何也不走function()方法,之前有想到是json格式的问题,但是改了还是不行。

后来终于终于

后台:

1
2
3
             result =  "{\"name\":\"Michael Jordan\",\"age\":\"51\"}" ;
             Response.Write(result);
             Response.End();

大家注意,都知道json的格式是{"key1”: "value1”, "key2”: "value2”} 这样(或者是把{}中的双引号变成单引号),但是在C#代码部分却是需要在引号(“”)前加上转义字符(\)的,否则永远走不到回调方法。

$.post()方法在以json作为返回类型的时候,是严格要求使用json格式才可以进入回调的。所以……

运行截图:

wKiom1QX7aPzY_pEAABX7owqAEY157.jpg










本文转自 我不会抽烟 51CTO博客,原文链接:http://blog.51cto.com/zhouhongyu1989/1553324,如需转载请自行联系原作者

目录
相关文章
|
27天前
|
JSON 前端开发 JavaScript
聊聊 Go 语言中的 JSON 序列化与 js 前端交互类型失真问题
在Web开发中,后端与前端的数据交换常使用JSON格式,但JavaScript的数字类型仅能安全处理-2^53到2^53间的整数,超出此范围会导致精度丢失。本文通过Go语言的`encoding/json`包,介绍如何通过将大整数以字符串形式序列化和反序列化,有效解决这一问题,确保前后端数据交换的准确性。
33 4
|
2月前
|
XML JSON 数据可视化
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
本文详细介绍了不同数据集格式之间的转换方法,包括YOLO、VOC、COCO、JSON、TXT和PNG等格式,以及如何可视化验证数据集。
241 1
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
|
3月前
|
XML JavaScript 前端开发
jQuery - AJAX get() 和 post() 方法
jQuery - AJAX get() 和 post() 方法
29 6
|
3月前
|
缓存 JavaScript 前端开发
jQuery - AJAX get() 和 post() 方法
jQuery - AJAX get() 和 post() 方法
27 4
|
3月前
|
缓存 JavaScript 前端开发
jQuery - AJAX get() 和 post() 方法
jQuery - AJAX get() 和 post() 方法
28 0
|
4月前
|
存储 JSON 前端开发
jQuery Get 请求参数转换为 JSON
【8月更文挑战第22天】
|
4月前
|
JSON 人工智能 编译器
Go json 能否解码到一个 interface 类型的值
Go json 能否解码到一个 interface 类型的值
33 1
|
4月前
|
JSON JavaScript 数据格式
html jquery from 表单提交 application/x-www-form-urlencoded 改成 json
html jquery from 表单提交 application/x-www-form-urlencoded 改成 json
47 0
|
4月前
|
JSON JavaScript 数据格式
Jquery 将 JSON 列表的 某个属性值,添加到数组中,并判断一个值,在不在数据中
Jquery 将 JSON 列表的 某个属性值,添加到数组中,并判断一个值,在不在数据中
84 0
|
2月前
|
数据采集 JSON 数据处理
抓取和分析JSON数据:使用Python构建数据处理管道
在大数据时代,电商网站如亚马逊、京东等成为数据采集的重要来源。本文介绍如何使用Python结合代理IP、多线程等技术,高效、隐秘地抓取并处理电商网站的JSON数据。通过爬虫代理服务,模拟真实用户行为,提升抓取效率和稳定性。示例代码展示了如何抓取亚马逊商品信息并进行解析。
抓取和分析JSON数据:使用Python构建数据处理管道