jQuery POST提交数据返回的数据不能解析为JSON对象

[Jquery]Jquery AJAX post提交json示例 下面是html请求web服务器api接口的示例,是post发送json方式请求。 <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title></title> <meta charset="utf-8" /> <script src=" 阅读详情

jQuery POST提交数据返回的数据不能解析为JSON对象

问题:

使用jQuery POST提交数据到PHP文件, PHP返回的json_encode后的数组数据, 但jQuery接收到的数据不能解析为JSON对象,而是字符串{"code":-1,"msg":"123","data":[]}

分析:

jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据。

jQuery $.get()方法

$.get() 方法通过 HTTP GET 请求从服务器上请求数据。
语法:$.get(URL,callback);
详细语法:

$(selector).get(url, data, success(response,status,xhr), dataType)

jQuery $.post() 方法

. p o s t ( ) 方 法 通 过 H T T P ‘ P O S T ‘ 请 求 从 服 务 器 上 请 求 数 据 。 语 法 : .post() 方法通过 HTTP `POST` 请求从服务器上请求数据。 语法: .post()HTTPPOST.post(URL,data,callback);
详细语法:

 jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)

查看$.post()详细的语法:

jQuery.post(url,data,success(data, textStatus, jqXHR),dataType)

你会发现,最后边有个参数 dataType,这个就是问题所在。
这个dataType是可选参数,它规定预期的服务器响应的数据类型。默认执行智能判断(xml、json、script 或 html)。

详细说明

该函数是简写的 Ajax 函数,等价于:

$.ajax({
  type: 'POST',
  url: url,
  data: data,
  success: success,
  dataType: dataType
});

解决:

$.post() 加上最后边的一个可选参数 dataType 为“json”类型

示例:获得 test.php 页面返回的 json 格式的内容:

$.post("test.php", { "func": "getNameAndTime" },
   function(data){
     alert(data.name); // John
     console.log(data.time); //  2pm
   }, "json");

示例:获得 test.php 页面的内容,并存储为 XMLHttpResponse 对象,并通过 process() 这个 JavaScript 函数进行处理:

$.post("test.php", { name: "John", time: "2pm" },
   function(data){
     process(data);
   }, "xml");

参考链接:

jQuery ajax 参考手册
http://www.w3school.com.cn/jquery/jquery_ref_ajax.asp

HTTP 方法:GET 对比 POST
http://www.w3school.com.cn/tags/html_ref_httpmethods.asp

jQuery ajax - post() 方法:
http://www.w3school.com.cn/jquery/ajax_post.asp

jQuery ajax - get() 方法
http://www.w3school.com.cn/jquery/ajax_get.asp

原文地址:
http://blog.sina.com.cn/s/blog_6c971aa30102vkaw.html

[END]

使用jQuery POST提交数据返回JSON是字符串不能解析JSON对象 刚开始介入编程,很多东西自己不是一下就能搞定的,刚开始犯的错还不少。 借助CSDN博客当做自己的笔记。 今天用jQueryPOST提交数据,我需要用他返回数据jQuery.post(URL+'/userTag/Option/delTag/index/'+index, function(json){ console.log(json); console.log(j 阅读详情

相关推荐

jquery ajax返回类型无法解析到底是json还是file

/ 设置下载文件的文件名,可以根据后端返回的文件名进行设置。// 或者其他处理二进制数据的方法。// 阻止后续的执行。用fetch可以完美解决问题。

qq_41037007的博客 151

使用jQuery实现post获取与提交

我们用bootstrap来布局就不用写样式,所以我们先引入bootstrap框架,放一个div类名为container,再在里面写form表单,在表单里我们先放四个div分别放姓名,性别和地址还有按钮,并且给他们两个相同的类为form-group form-row,有了这两个类就把样式都写好了。 在每个的div中放一个label标签(除了放按钮的div),我们把文本放在label标签内,并且给label标签三个相同的类form-check-label col-1 text-center。 在姓...

u_u2020的博客 2827

jQuery - AJAX get() 和 post() 方法

jQuery get() 和 post() 方法用于通过 HTTP GET 或 POST 请求从服务器请求数据

unber的博客 663

jquery.post获取处理json数据

摘要:   使用jquery.post获取json数据,并对返回json数据进行处理。php相应post请求返回json数据,js将返回数据转换为json对象进行处理。 实现:   前端:使用jquery.post请求数据 $.post(url,data,success(data))   响应请求:使用php响应请求(前面借鉴了phpwind的响应ajax请求,所以返回的是xm...

weixin_33912445的博客 469

从零搭建微信AI聊天机器人:多轮上下文与记忆管理实战

大模型能力的普及让对话式AI从实验室走向工程实践,而构建一个真正可用的聊天机器人,核心挑战已从模型选择转向系统设计。对话系统的基础原理包括消息接入、意图识别、回复生成与上下文管理,其中多轮上下文记忆直接决定用户体验的连贯性与自然度。在技术落地上,开发者常通过Webhook服务接收消息,调用云端大模型API生成回复,并利用数据库保存短期记忆,从而实现稳定的AI对话能力。这类方案广泛适用于企业微信、公众号及个人测试号等场景,可支撑定时提醒、主动推送、批量测试等扩展功能。本文围绕微信聊天机器人的完整实现,重点拆解

weixin_34033624的博客 273

jQuery +ajax提交json数据

首先,很多网站开发都会采用jQuery ,简化了js的代码,是开发更方便,因此我也开始使用jQuery。。。。 如果不知道如何在js中使用jQuery请移步这里 在jQuery中封装有$.ajax方法可以直接来调用 如果对于Ajax方法不了解请可以查看这里有各个参数的介绍 如果要使用json需要下载json的jar包及其依赖包 很多网站上都有,可自行百度 提供一个网址 //提交jso...

清风自来 7万+

Ajax提交post请求案例分析例子解析

在分析Ajax返回值类型与用法的实例之前,让我们先明确Ajax是什么。Ajax(Asynchronous JavaScript and XML)是一种在不重新加载整个页面的情况下,与服务器交换数据并更新部分网页内容的技术。

IT老农民的博客 1933

ajax 提交post get 数据,得到json结果解析

ajax 请求接口,并处理结果//id为 btnBuyBox $('#btnBuyBox').click( function(){ //$("#formjs").submit(); $.ajax({ //提交数据的类型 POST GET type : "PO

7829

Jquery ajax方法解析返回json数据

最近在用jquery的ajax方法传递接收json数据时发现一个问题,那就是返回的data数据,有时候可以直接作为json数据使用,可有时候又不行。查了些资料,解释如下: $.ajax({ url: ajaxurl, type: "POST", success: function(data){ //假设返回json数据里有status及info2个属性 //有时候

Sara的专栏 6万+

利用Jquerypost提交数据到后台

&lt;script src="https://code.jquery.com/jquery-3.2.0.js"&gt;&lt;/script&gt; &lt;!-- 此处插入JavaScript脚本 --&gt; &lt;script type="text/javascript"&gt; /** 传递JSON**/ ...

渔闻520的博客 6514

jquery 解析post请求返回json数据

jquery里当$.post返回json数据时,在回调函数里怎么获得json里的status值或者data值(json里得各个字段得值) $.post(url,{},function(json){ var o = eval("("+json+")");// 将json转换为对象 json 格式{status:'1',data:'2'} alert(o.status);

末路狂奔》》》》 6769

jquery表单ajax json数据,jquery序列化form表单使用ajax提交后处理返回json数据

1、返回json字符串:/** 将一个字符串输出到浏览器 */protected void writeJson(String json) {PrintWriter pw = null;try {servletResponse.setContentType("text/plain;charset=UTF-8");pw = servletResponse.getWriter();pw.write(js...

weixin_34313315的博客 1292

SpringMVC 接收页面Post提交json字符串并解析

json 使用的是ali的fastjson;页面提交的是json字符串,后台使用@RequestBody String param接收数据,通过json解析param;页面:[html] view plain copy&lt;%@ page language="java" contentType="text/html; charset=utf-8"      pageEncoding="utf-8...

isunlight001的专栏 1920

jquery,ajax提交json数据获取后台返回json数据

实例: $.ajax({ url: "http://l",//地址 type: "POST", data: JSON.stringify(dedata),//dedata为对象 contentType: "application/json", //缺失会出现URL编码,无法转成json对象 success: function (result) { //所...

qq_36603180的博客 1010

jQuery.Post到Struts2的action处理,并返回json对象到前端

之前虽然一直在用jQuery.post函数,将前端页面的请求发送到struts中的action处理,但是用的是公司写好的一套东西,基本都是复制粘贴,反而对基本的post功能没有深入了解。下面简单配置说明action中接收处理post的请求。 用的是struts2,web.xml配置如下 <web-app version="2.5" xmlns="http://java.sun

iailp47的博客 2673
上一篇: PHP如何导出CSV文件和TXT文件?如何防止Excel打开CSV乱码?
下一篇: PHP Laravel-Homestead开发环境安装与配置
Web后端技术
博客等级 码龄16年 76粉丝 70原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值