jQuery ajax的traditional参数的作用
一般的,可能有些人在一个参数有多个值的情况下,可能以某个字符分隔的形式传递,比如页面上有多个checkbox:
1
2
3
4
5
6
|
$.ajax{ url: "xxxx" , data:{ p: "123,456,789" } } |
然后后台获取参数后再分隔,这种做法有很大弊端,试问如果某一个参数值中出现了分隔符所使用的字符,会出现什么情况呢?当然后台获取的参数将与实际情况不符.
这时我想到了将上述代码写成这样:
1
2
3
4
5
6
|
$.ajax{ url: "xxxx" , data:{ p: [ "123" , "456" , "789" ] } } |
如果单纯写成这样,在java后台是无法取到参数的,因为jQuery需要调用jQuery.param序列化参数,
1
|
jQuery.param( obj, traditional ) |
默认的话,traditional为false,即jquery会深度序列化参数对象,以适应如PHP和Ruby on Rails框架,
但servelt api无法处理,我们可以通过设置traditional 为true阻止深度序列化,然后序列化结果如下:
1
|
p: [ "123" , "456" , "789" ] => p=123&p=456&p=456 |
随即,我们就可以在后台通过request.getParameterValues()来获取参数的值数组了,
所以,比如我们前台有多个checkbox,前台的代码可以写成:
1
2
3
4
5
6
7
8
9
10
|
var values = $( "input[type=checkbox]" ).map( function (){ return $( this ).val(); }).get(); $.ajax{ url: "xxxx" , traditional: true , data:{ p: values } } |
jQuery ajax的traditional参数的作用的更多相关文章
- jQuery ajax的traditional参数的作用///////////////////////////////////zzzzzzzzzzz
jQuery ajax的traditional参数的作用 i33 发布时间: 2013/04/03 10:05 阅读: 9859 收藏: 9 点赞: 1 评论: 0 一般的,可能有些人在一个参数有多个 ...
- jQuery ajax中的参数含义
所有options均可选,下面简要说明每个option 1.async 默认为true,即请求为异步请求,这也是ajax存在的意义.但同时也可以将这个参数设置为false,实现同步请求.(同步请求会锁 ...
- jQuery.ajax()的相关参数及使用
jQuery.ajax(),有很多项参数,小弟菜鸟级别,有时候想不起来,现在记录下来便于以后查看,也欢迎大神指正. 常用的几类,可以称为模板样式写法: $.ajax({ url: "url& ...
- jQuery ajax传递特殊字符参数(例如+)
使用jQuery ajax向后台传递参数para=1+1时后台接收到的参数为para=1 1,解决方案是 使用json传递,代码如下. var url = "/test/check" ...
- JQuery.Ajax()的data参数类型
假如现在有这样一个表单,是添加元素用的. <form id='addForm' action='UserAdd.action' type='post'> <label for='un ...
- jquery ajax get 数组参数
对一些get请求,但方法参数要求是数组或集合的,如下 public virtual ActionResult Test(List<int> ids) { return Json(" ...
- JQuery ajax方法及参数
©屋主原创,版权归 todayeeee 所有!如需转载,必须在页面明显位置给出原文链接!商业用途请 联系我! $.ajax({ type: 'GET', // 这是请求的方式 可以是GET方 ...
- JQuery.Ajax()的data参数传递方式
最近,新学c# mvc,通过ajax post方式传递数据到controller.刚开始传递参数,controller中总是为null.现记录一下,可能不全,纯粹记个学习日记. 重点在于参数的方式,代 ...
- Jquery ajax传递复杂参数给WebService
参考: http://www.cnblogs.com/kingge/archive/2011/08/04/2127642.html http://www.cnblogs.com/micromouse/ ...
随机推荐
- HTTP协议请求方式: 中GET、POST和HEAD的介绍以及错误提示码
HTTP协议中GET.POST和HEAD的介绍 2008-05-10 14:15 GET: 请求指定的页面信息,并返回实体主体. HEAD: 只请求页面的首部. POST: 请求服务器接受所指定的文档 ...
- Volume serial number could associate file existence on certain volume
When it comes to lnk file analysis, we should put more emphasis on the volume serial number. It coul ...
- 017Makefile工程管理
1.为什么需要Makefile? 利用Makefile和make的合作,可以把很多很多的工作合并成一个非常简单的命令:make: make能够使整个程序的编译.链接只需要一个命令(make)就可以完成 ...
- typedef 及其与struct的结合使用
//相当于为现有类型创建一个别名,或称类型别名. //整形等 typedef int size; //字符数组 ]; ];//=> typedef ]; Line text, secondlin ...
- wp8.1 全球化解决办法
最近在更新一个应用,在wp8.1里面重写整个应用,由于8.1版本的api.架构和windows8.1的接口高度相同,变化很大,在编码过程中,只能一边翻msdn资料一边摸索解决遇到的问题,其中程序标题和 ...
- 自制docker basic image
docker的安装和入门见官网教程:http://docs.docker.com/ 下面是自制docker basic image的步骤,以ubuntu为例. 1. 安装debootstrap apt ...
- ASP.NET中Button控件的CommandName和CommandArgument属性用法
在Repeater中的使用: <asp:Repeater ID="rptActionList" runat="server" OnItemCommand= ...
- .net框架
转载:http://www.cnblogs.com/JimmyZhang/archive/2012/11/27/2790759.html 本书是一本讲解.NET技术的书籍,目标读者群也是在.NET框架 ...
- 可以获取get post url 传递参数的统一方法
public static string objRequest(string requestName) { object obj = HttpContext.Current.Request[reque ...
- jquery.unobtrusive-ajax.js单独的用法
(插件本身已经减少了人力,如果开始无脑开发,简直就是无能,@Ajax里面哪里帮助类生成的其实就是jquery.unobtrusive的一些特性) jquery.unobtrusive是MVC中出现的j ...