@在GET中转换为%40

时间:2012-03-09 09:09:24

标签: jquery ajax forms asciiencoding

我正在使用http://jquery.malsup.com/form/,我正在使用GET将电子邮件地址发布到网址。

看起来电子邮件地址中的@正在转换为%40。

这是捕获数据的网站的问题吗?

1 个答案:

答案 0 :(得分:15)

%40@的网址编码版本。此转换仅发生在URL中。服务器仍会将其视为@,如有必要,您甚至可以使用JavaScript对其进行解码:

decodeURIComponent('%40'); // '@'
// or, to encode it back:
encodeURIComponent('@'); // '%40'

以下是将在服务器端进行解析的URL示例:

http://mathiasbynens.be/demo/get?x=%40

如果您visit the page,您会看到它打印@,而不是%40

以下是使用decodeURIComponent在客户端进行解析的URL示例:

http://mothereff.in/byte-counter#%40

如果您visit the page,您会看到textarea的内容设置为@,而不是%40