jquery ajax传递的data参数中带json多维数组字符串
2015-09-07 09:56
621 查看
情况描述:
后台那边是J***A,需要我从前台Ajax传递数据,数据包含一些表单字段,和一个json二维数组,使用的是jquery $.ajax跨域方法。
其中 $menusStr是一个JSON二维数组字符串,之前的写法是:
然后发现后台那边其他字段都可以接收到,唯独 ‘$menusStr’为null,百思不得其解,然后利用json格式校验工具校验,发现整个’$dataStr’格式无法通过校验。
后来改成如下格式,通过了验证,并且后台接收成功:
虽然问题解决,但是原因不详,因为json官方的多维数组写法是第一种那种,但就是不行,这个问题在这里做标记,等工作忙完好好研究一下。
后台那边是J***A,需要我从前台Ajax传递数据,数据包含一些表单字段,和一个json二维数组,使用的是jquery $.ajax跨域方法。
var $dataStr = { "name": $name, "phone": $phone, "trainNum": $trainNum, "coach": $coach, "seatNum": $seatNum, "remark": $remark, "menusStr":$menusStr //这个是二维数组字符串 } $.ajax({ type:"get", url:"ip:port/ordering/orderManager/addOrder", data:$dataStr, dataType:'jsonp', async:false, jsonp:'callback', jsonpCallback:'callback', success:function(json){ if(json.result){ alert("订餐成功,等待送餐"); }else{ alert("抱歉,订餐失败,请联系服务员"); } }, complete:function(){ }, error:function(e){ alert("数据加载失败"); alert(e); } });
其中 $menusStr是一个JSON二维数组字符串,之前的写法是:
// $menusStr='[{"a":3,"b":"33"},{"d":"vv","c":55}]';
然后发现后台那边其他字段都可以接收到,唯独 ‘$menusStr’为null,百思不得其解,然后利用json格式校验工具校验,发现整个’$dataStr’格式无法通过校验。
后来改成如下格式,通过了验证,并且后台接收成功:
$menusStr="[{'a':3,'b':'33'},{'d':'vv','c':55}]";
虽然问题解决,但是原因不详,因为json官方的多维数组写法是第一种那种,但就是不行,这个问题在这里做标记,等工作忙完好好研究一下。
相关文章推荐
- jQuery介绍 DOM对象和jQuery对象的转换与区别
- jQuery满屏焦点图左右滚动特效代码分享
- jquery实现初次打开有动画效果的网页TAB切换代码
- jquery实现可自动收缩的TAB网页选项卡代码
- jquery动态导航插件dynamicNav用法实例分析
- jQuery.extend 函数及用法详细
- 基于jquery实现的树形菜单效果代码
- jquery京东商城双11焦点图多图广告特效代码分享
- jquery实现美观的导航菜单鼠标提示特效代码
- jQuery横向擦除焦点图特效代码分享
- 基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
- jquery中表单 多选框的一种巧妙写法
- 去除谷歌浏览器和部分IE浏览器记住密码功能
- 实现Jquery触发一事件后,停留5秒,再接着触发下面的事件
- jQuery中filter(),not(),split()的用法
- jquery1.9radio checkbox操作
- jQuery选择器
- jQuery.reveal弹出层
- JQuery ztree 异步加载实践
- jQuery常用函数-思维导图