jQuery.ajax向后台传递数组问题的解决方法


Posted in jQuery onMay 12, 2017

今天重温了一个问题,jQuery.ajax向后台传递一个数组,而在后台接收不到该值。

前台js方法部分代码如下:

//创建一个测试数组
var boxIds = new Array();
boxIds.push(12182);
boxIds.push(12183);
boxIds.push(12184);
//向后台交互
$.ajax({
  url: "/xxx",
  type: "GET",
  data: {
    "boxIds": boxIds,
    "boxType": 0,
    "time": new Date().getTime()
  },
  success: function(data) {
    //do sth...
  }
});

后台controller代码(SpringMVC)

@ResponseBody
@RequestMapping(value = "/box/changeLock")
public String changeLock(final Long[] boxIds, final int boxType) {
  return locker_ChangeLockService.changeLock(boxIds, boxType);
}

观察浏览器中发送的请求,可以发现参数如下:

jQuery.ajax向后台传递数组问题的解决方法

可以看到,参数的名字为boxIds[]而不是我们所定义的boxIds,也就是说,当传递数组时,会在我们的数组名称后自动加上”[]”,所以后台接不到。

解决办法:

设置jQuery.ajax的tradional属性

$.ajax({
  url: "/xxx",
  type: "GET",
  data: {
    "boxIds": boxIds,
    "boxType": 0,
    "time": new Date().getTime()
  },
  traditional: true,//这里设置为true
  success: function(data) {
    //do sth...
  }
});

修改之后重新发出请求,观察浏览器:

jQuery.ajax向后台传递数组问题的解决方法

请求参数2

这次参数不带”[]”了,并且后台可以成功接收到该数组。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jquery中each循环的简单回滚操作
May 05 jQuery
jQuery 实现图片的依次加载图片功能
Jul 06 jQuery
jQuery模拟爆炸倒计时功能实例代码
Aug 21 jQuery
jquery 一键复制到剪切板的实例
Sep 20 jQuery
bootstrap可编辑下拉框jquery.editable-select
Oct 12 jQuery
JS/jQuery实现DIV延时几秒后消失或显示的方法
Feb 12 jQuery
JQuery扩展对象方法操作示例
Aug 21 jQuery
jQuery 点击获取验证码按钮及倒计时功能
Sep 20 jQuery
jQuery实现的自定义轮播图功能详解
Dec 28 jQuery
jQuery实现的中英文切换功能示例
Jan 11 jQuery
js判断复选框是否选中的方法示例【基于jQuery】
Oct 10 jQuery
jQuery模仿ToDoList实现简单的待办事项列表
Dec 30 jQuery
jQuery遮罩层实例讲解
May 11 #jQuery
jQuery zTree树插件动态加载实例代码
May 11 #jQuery
jQuery实现的简单在线计算器功能
May 11 #jQuery
jQuery+PHP+Mysql实现抽奖程序
Apr 12 #jQuery
JQuery实现定时刷新功能代码
May 09 #jQuery
jQuery插件开发发送短信倒计时功能代码
May 09 #jQuery
jquery.uploadifive插件怎么解决上传限制图片或文件大小问题
May 08 #jQuery
You might like
Body是什么,该怎么喝出咖啡里的口感
2021/03/03 咖啡文化
php中的观察者模式
2010/03/24 PHP
解决Codeigniter不能上传rar和zip压缩包问题
2014/03/07 PHP
session 加入redis的实现代码
2016/07/15 PHP
PHP编辑器PhpStrom运行缓慢问题
2017/02/21 PHP
laravel 框架结合关联查询 when()用法分析
2019/11/22 PHP
javascript白色简洁计算器
2015/05/04 Javascript
Jquery 效果使用详解
2015/11/23 Javascript
基于JavaScript实现轮播图代码
2016/07/14 Javascript
使用Angular缓存父页面数据的方法
2017/01/03 Javascript
jQuery实现滚动条滚动到子元素位置(方便定位)
2017/01/08 Javascript
完美的js图片轮换效果
2017/02/05 Javascript
JS+html5制作简单音乐播放器
2020/09/13 Javascript
Vue中的ref作用详解(实现DOM的联动操作)
2017/08/21 Javascript
改变vue请求过来的数据中的某一项值的方法(详解)
2018/03/08 Javascript
nodejs 生成和导出 word的实例代码
2018/07/31 NodeJs
react koa rematch 如何打造一套服务端渲染架子
2019/06/26 Javascript
JavaScript实现鼠标移入随机变换颜色
2020/11/24 Javascript
Python入门篇之数字
2014/10/20 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
python3.x 将byte转成字符串的方法
2018/07/17 Python
Python虚拟环境的原理及使用详解
2019/07/02 Python
python基础 range的用法解析
2019/08/23 Python
Python queue队列原理与应用案例分析
2019/09/27 Python
Python代码需要缩进吗
2020/07/01 Python
django数据模型中null和blank的区别说明
2020/09/02 Python
浅析关于Keras的安装(pycharm)和初步理解
2020/10/23 Python
解决pytorch 数据类型报错的问题
2021/03/03 Python
基于CSS3制作立体效果导航菜单
2016/01/12 HTML / CSS
加拿大时尚潮流大码女装购物网站:Addition Elle
2018/04/02 全球购物
Can a struct inherit from another struct? (结构体能继承结构体吗)
2016/09/25 面试题
班级年度安全计划书
2014/05/01 职场文书
中药学自荐信
2014/06/15 职场文书
布达拉宫的导游词
2015/02/02 职场文书
2015年世界卫生日活动总结
2015/02/09 职场文书
丧事主持词
2015/07/02 职场文书