博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ajax的traditional属性
阅读量:6908 次
发布时间:2019-06-27

本文共 913 字,大约阅读时间需要 3 分钟。

jquery框架的ajax参数除了常用的

$.ajax({  url: 'xxx',  type: 'xxx',  data: 'xxx',  success: 'xxx'  ...})

外还有一个参数需要特别注意下traditional默认值是false。ajax做数据处理时,是通过该方法进行处理。

jquery1.4版本以后
traditional参数,默认false的时候如果是{a:{b:'value'}}是处理成a[b],这样形式,如果是数组:data:{a:[1,2]},是解析成a[]=1&a[]=2,这种方式后台确实要做兼容(取a[b]或a[])来取值。
在数组情况下把traditional参数设置成true,是解析成a=1&a=2,对后台直接通过a拿数据。但是实验了下object情况,把traditional设置成true,转成了a=[object+Object],这样就是费的了。false时解析成上面的形式应该就是类型指示作用,我看到这种格式就知道请求数据是Array还是object了,true就是按照form提交的方式传值。

当需要把多个checkbox的value值通过ajax传到servlet时就需要加上traditional参数并且为true,如下代码:

//批量删除            $("#alldel").click(function () {                var ids = $(".che:checked");                var items = new Array();                for (var i=0;i

 在后台我们就可以用 String[] items = request.getParameterValues("items")  进行接收前端传过来的数组,如下图:

这样就可以用SQL语句 delete from xxx where id in(x,x)  多参数的形式进行操作了。

注:本文仅为个人学习笔记。

转载于:https://www.cnblogs.com/hxw6/p/9718149.html

你可能感兴趣的文章
MongoDB系列一(索引及C#如何操作MongoDB)
查看>>
解决Android SDK下载和更新失败的方法(Win系统) 和离线安装
查看>>
解决eclipse+MAVEN提示One or more constraints have not been satisfied.的问题
查看>>
nginx主配置文件 在那找怎么打开
查看>>
Android:Intent
查看>>
C++标准转换运算符const_cast
查看>>
【Cocos2d-x】Mac 在 Cocos2d-x 3.X 打包Android
查看>>
测试计划与测试方案的区别
查看>>
Hadoop 读取文件API报错
查看>>
JS实现密码加密
查看>>
HTML+CSS-如何定义让两个div横向排列
查看>>
Matlab画柱状和折线对照图
查看>>
javascript时间戳和日期字符串相互转换
查看>>
链接详解--静态库
查看>>
从0开始学java——JUnit4 复习,其实基本思想还是那些,不过采用了新的注释格式的语法...
查看>>
GNU M4 - GNU Project - 免费软件基金会(FSF)
查看>>
jsp中将后台传递过来的json格式的list数据绑定到下拉菜单select
查看>>
Project Euler 85 :Counting rectangles 数长方形
查看>>
MYSQL查询某字段中以逗号分隔的字符串的方法
查看>>
Excel设置下拉菜单并隐藏下拉菜单来源单元格内容
查看>>