jQuery的serialize模块中有个r20正则
var r20 = /%20/g,
jQuery.param方法中会将所有的"%20"转成"+",即提交数据前,数据中如果包含空格,那经过encodeURIComponent后,空格会转成"%20"
encodeURIComponent(' ') === '%20'; // true
最后需要将"%20"转换成"="再Post提交。这样后台程序接受到的才是真正的空格。
关于 encodeURIComponent,见MDC描述
encodeURIComponent
escapes all characters except the following: alphabetic, decimal digits, - _ . ! ~ * ' ( )
To avoid unexpected requests to the server, you should call encodeURIComponent
on any user-entered parameters that will be passed as part of a URI. For example, a user could type "Thyme &time=again
" for a variable comment
. Not using encodeURIComponent
on this variable will give comment=Thyme%20&time=again
. Note that the ampersand and the equal sign mark a new key and value pair. So instead of having a POST comment
key equal to "Thyme &time=again
", you have two POST keys, one equal to "Thyme
" and another (time
) equal to again
.
For application/x-www-form-urlencoded
(POST), per http://www.w3.org/TR/html401/interac...m-content-type, spaces are to be replaced by '+', so one may wish to follow a encodeURIComponent
replacement with an additional replacement of "%20" with "+".
相关:
https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/encodeURIComponent
http://www.w3.org/TR/html401/interact/forms.html#form-content-type
相关推荐
参数有中包含空格且使用Post提交时须将空格转换成加号,这样后台程序接受到的才是真正的空格,感兴趣的朋友可以了解下
url出现了有+,空格,/,?,%,#,&,=等特殊符号的时候,可能在服务器端无法获得正确的参数值,如何是好?解决办法将这些字符转化成服务器可以识别的字符,对应关系如下:URL字符转义 用其它字符替代吧,或用全角的...
如果你的表单使用get方法提交,并且提交的参数中有“&”等特殊符的话,如果不做处理,在service端就会将&后面的作为另外一个参数来看待。例如 表单的action为list.jsf?act=Go&state=5 则提交时通过request....
对项目中的所有参数去除前后空格过滤,统一处理参数!可以基于此过滤器实现过滤跨站脚本攻击,参数的增加,修改!敏感词汇过滤。实现原理为重写HttpServletRequestWrapper,获取参数的方法。include和 Forwarded ...
给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。 比如: (1) “hello xiao mi”-> “mi xiao hello” 输入描述: 输入数据有多组,每组占一行...
使用JS提交数据时,可以调用本方法实现post方式的提交。 var jsPost = function(action, values) { var id = Math.random(); [removed]('<form id=post' + id + ' name=post'+ id +' action=' + action + ' ...
前言 本文主要给大家介绍的是关于SQL Server查找包含空格的...--表TEST_COLUMN中两个字段都包含有空格 CREATE TABLE TEST_COLUMN ( ID INT IDENTITY (1,1), [Name ] VARCHAR(32), [Normal] VARCHAR(32) ); GO --表
16进制转换2进制 同时去空格和回车,实验了非常好用。
讲输入字符中间的制表符转换成空格,主要是对输入的应用,值得初学者学习
1138:将字符串中的小写字母转换成大写字母 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 54809 通过数: 25241 【题目描述】 给定一个字符串,将其中所有的小写字母转换成大写字母。 【输入】 输入一行,包含一...
javascript 取Url参数和去掉字符串前后空格方法,非常实用
MFC按行读取txt文件,以空格分隔字符,并转换为double型
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。 【输入】 一行,一个字符串(长度不超过200 ),句子的头和尾都没有空格。 【输出】 过滤之后的句子。 【输入样例】 Hello world.This is c ...
网址可以转换成十六进制,网址中汉字也可以转换。也可以转回。比如:http://%77%77%77%2E%31%36%33%2E%63%6F%6D,这个网址就是www.163.com 需要.net3.5
传带空格的命令行参数,处理类似document and setting之类的问题
html中输入空格的解决方案html中输入空格的解决方案 - 云之狼 - 网易博客.htm
C语言程序设计-将从键盘上输入的每个单词的第一个字母转换为大写字母,输入时各单词必须用空格隔开,用’.’结束输入; .c