这篇文章主要给大家介绍了关于利用ajax传递数组及后台接收的相关资料,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们一起来学习学习吧。

前言

我们在使用ajax异步的提交多选框得到需要操作的对象的id,这时我们可以把每一个id做出一个对象,之后放到一个数组中,再使用JSON.stringify()对这个数组进行json的格式化;在后台中再inputStream中解析出我们的json字符串,之后只用:

new JSONArray()得到json数组,循环解析我们想要的属性:

var countsCheckBox = $("input[type='checkbox']:checked");

var booksid = [];

for(var i=0;i

//使用[]取得元素是是一个domElement元素,取值需要使用.value,

//如果使用countsCheckBox.eq(i) 则是一个Obkject元素,就可以使用val()取值

//alert(countsCheckBox[i].value);

mysendbook_id = {};

mysendbook_id['book_id'] = countsCheckBox[i].value;

booksid[i] = mysendbook_id;

}

//alert(booksid);

var confirmdel= confirm('确认要删除吗?');

if(confirmdel){

//开始请求删除

$.ajax({

url:'selectdelbooks',

data:JSON.stringify(booksid),

type:'post',

success:function(res){

alert("删除成功");

location.replace("/TheDemo/books/pageBooksShow");

}

});

}

上面的js中我们把每一个选中的id放到一个mysendbook_id的“book_id”的属性中,再把这个对象放到booksid的数组中;到发送异步请求时使用

JSON.stringify(bookid)格式化这个booksid数组,得到一个json的数组。

再看后台我们怎么接收:

一个是做一个类里面有一个list,这个list装的是只有一个属性为bookid的类,再使用注解@RequestBody加到这个形参上。但是这样比较麻烦;

还有一种是从输入流里面获取数据,使用IOUtils.toString把inputStream转为字符串,再使用new JSONArray(mybooksid);得到这个json数组

从而得到每一个json中的book_id的属性值

@RequestMapping("selectdelbooks")

public String selectdelbooks(HttpServletRequest request) throws Exception {

ServletInputStream inputStream = request.getInputStream();

String mybooksid = IOUtils.toString(inputStream);

JSONArray jsonarr = new JSONArray(mybooksid);

List book_id =new ArrayList();

for (int i=0;i

book_id.add(((JSONObject)jsonarr.get(i)).getString("book_id"));

}...

这样我们得到一个list,里面有我们选中的id值。

数据库中信息:

页面的多选:

后台得到的选择的book的id:

这样拿到id的集合,那后面的操作就方便了。

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

php ajax向后台怎么传数组,利用ajax传递数组及后台接收的方法详解相关推荐

  1. win10装linux虚拟机contos,利用win10自带虚拟机hyper-v安装centos7方法详解

    一.安装win10企业版自带虚拟机 hyper-v 1.控制面板-->程序和功能-->启用或关闭Windows功能 勾上 hyper-v 确定就ok了 2.安装成功后会发现在 左下角&qu ...

  2. ecmall php传变量,PHP_ECMall支持SSL连接邮件服务器的配置方法详解,首先,主要是ecmall使用的phpmail - phpStudy...

    ECMall支持SSL连接邮件服务器的配置方法详解 首先,主要是ecmall使用的phpmailer版本太低,不支持加密连接. 然后,得对相应代码做一定调整. 1. 覆盖phpmailer 请从附件进 ...

  3. mysql zrm 配置_利用MySQL-zrm来备份和恢复MySQL数据库方法详解

    MySQL ZRM 工具是用PERL写的可以全部和增量备份MySQL数据库的一个强大工具. 还可以做快照,不过我现在没有条件做.等以后有可以做了再补上. 其实具体要说的也没啥,我只是做了点测试. 这里 ...

  4. 【前端用法】$.ajax()方法详解,以及$.ajax()标准写法

    使用JQuery中的异步请求$.ajax()方法,经常记不全参数,所以在这里记录一下,方便后续使用. 首先看一个标准的写法: $(document).ready(function () {$.ajax ...

  5. webpack打包后引用cdn的js_利用CDN加速react webpack打包后的文件详解

    此文不介绍webpack基本配置,如果对基本配置有疑问请查阅官方文档. 1.配置webpack.config.js 将output.publicPath改成上传到的cdn地址, 例(对应上面上传配置) ...

  6. matlab合并有序数组,《数组合并》JS合并两个数组的3种方法详解

    这篇文章主要介绍了JS合并两个数组的3种方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一个包解决你所有的JS问题,点击获取 需要将两个数组 ...

  7. ES5和ES6数组遍历方法详解

    ES5和ES6数组遍历方法详解 在ES5中常用的10种数组遍历方法: 1.原始的for循环语句 2.Array.prototype.forEach数组对象内置方法 3.Array.prototype. ...

  8. mysql回滚用法_Mysql误操作后利用binlog2sql快速回滚的方法详解

    前言 在日常工作或者学习中,操作数据库时候难免会因为"大意"而误操作,需要快速恢复的话通过备份来恢复是不太可能的,下面这篇文章主要给大家介绍关于Mysql误操作后利用binlog2 ...

  9. php 去重_php求两数组交集的四种方法详解

    题目:给定两个数组,编写一个函数来计算它们的交集. 示例 1: 输入: nums1 = [1,2,2,1],nums2 = [2,2] 输出: [2] 示例 2: 输入: nums1 = [4,9,5 ...

最新文章

  1. Oracle简单常用的数据泵导出导入(expdp/impdp)命令举例(上)
  2. python中类方法与实例方法的区别-Python实例方法、类方法、静态方法的区别与作用详解...
  3. exfat linux 读写速度,Ubuntu / Xubuntu : 读写 exFAT 文件系统
  4. grub4dos命令引导自定义映像_DOS的常用命令二
  5. 在Window上使用Jenkins自动部署和上传快照Java工件
  6. 【LeetCode笔记】6. Z字形变化(JAVA、思路)
  7. 面试还搞不懂Redis,快看看这40道面试题!| 博文精选
  8. Jeewx-api 1.1 版本发布,微信极速 SDK
  9. Spring:笔记整理(1)——HelloWorld
  10. Vue路由 --登录状态的判断
  11. 工厂模式——三个工厂模式(简单工厂模式,工厂方法模式,抽象工厂模式)...
  12. 在VB6中保存单色(1Bit)位图(VB6代码)
  13. 【Mac技巧】怎样隐藏电脑Dock栏
  14. PHP一个文件内多个php代码段的写法
  15. 基于特征的真菌分解木材的理解
  16. Spring中整合mybatis包
  17. 记一个小工具——font-spider(字蛛-css压缩中文字体字体)
  18. linux怎么sftp传文件,Linux 如何使用SFTP命令传输文件
  19. 慧数汽车大数据:中国多功能轿车(旅行车)市场研究报告(2018简版)
  20. 参考一:双缝干涉与波长测量

热门文章

  1. layui 日期选择器 laydate详细参数用法大全,一键复制粘贴
  2. 一个简单的wifi热点启动流程追踪
  3. 栈(stack)C语言实现(有详细注释讲解)
  4. 根据文本信息自动生成图片怎么操作?值得收藏的几种转换方法
  5. 解决docker权限不足问题
  6. 论计算机的维修策略论文,论计算机的维护维修策略(论文).doc
  7. 如何计算冲突域和广播域-图解分析
  8. STM8 8位基本型定时器 TIM4
  9. img不拉伸图片 对图片保留原始比例
  10. APL开发日志--2012-11-28