knrt.net
当前位置:首页 >> jquEry AjAx 向后台传 json 数组 出现 400 或 415 ... >>

jquEry AjAx 向后台传 json 数组 出现 400 或 415 ...

400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。 415 介质类型不受支持 — 服务器拒绝服务请求,因为不支持请求实体的格式。 检查 data 吧,看看提交到后台的数据是否合法!

1、检查你提交的内容,是不是json格式的字符,不管前台是传递json 字符串 还是 json对象过去,springMVC 的requestBody都可以给你进行对象的属性值转换,我最后发现这个原因是因为传递的那个dto 对象中,有两个一样的名称属性,只是大小写不一样...

返回的result是局部变量,只能在success中取到。默认的是异步请求,异步请求只能在ajax方法内部取到.可以设置async :false

在jquery中用ajax传递接送数据的方法是: 以下代码示例: $.ajax({ url: url, type: "POST", data: JSON.stringify(data), //注意这里一定要验证json格式 contentType: "application/json", complete: callback });

var result = JSON.parse(msg); for (var i = 0 ; i < result.length ; i++) { alert(result[i].LogID + " " + result[i].LogTitle) } 或者$.ajax的参数有一个属性是dataType,指定为json之后,回调函数的参数就是一个JSON.parse之后的对象

将对象或数组转成字符串JSON.stringify(jsonobj); 有特殊字符可以编码,到后台开发人员再转解码

最好是使用第一种,然后后台用2个属性接收,或者用对象接收都可以。 第二种一般是后台用字符串接收,比如前端传值是data:str='{"uname":"tom","pwd":123}' 那么后端就用str的String类型接收就可以了! 另外推荐一个JSON工具给您。 JSON在线解析...

导入的话使用。 这里不用导入什么json.js吧,js默认就支持json。 直接使用就可以了,String ret = "{'a':1,'b':2}"; 在返回页面接收时需要重新计算这个json. function getHttpMsg(msg){ eval("ret="+msg); alert(ret.a); } 这里用到了eval函数.

首先你的代码有错误 else中间的内容时不对的。 我猜应该是else{ var data={ 'question1':.... ..... } } 而且你的data是局部变量,不建议在域外使用。 可以改为 var data = {}; if(...) { data = {...} } 进入正题 jsonData:{"data":data,"pu...

确实理论上没有限制,get就有长度限制,post没有 希望能帮到你

网站首页 | 网站地图
All rights reserved Powered by www.knrt.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com