【发布时间】:2010-12-15 14:09:29
【问题描述】:
在我的网站www.gibberize.com 上,如果您在顶部文本区域中输入单词“and”,字符“&”将出现在第二个文本区域中。
问题是“tweet it”链接会将第二个文本区域的文本附加到 url 并继续链接,但因为它是一个 & 符号,它会破坏文本。
有什么解决办法吗?
【问题讨论】:
-
你用什么语言做后端编码?
标签: javascript html url ampersand
在我的网站www.gibberize.com 上,如果您在顶部文本区域中输入单词“and”,字符“&”将出现在第二个文本区域中。
问题是“tweet it”链接会将第二个文本区域的文本附加到 url 并继续链接,但因为它是一个 & 符号,它会破坏文本。
有什么解决办法吗?
【问题讨论】:
标签: javascript html url ampersand
使用 PHP 的 urlencode() 函数。
【讨论】:
是的,在附加推文之前转义 & 符号,将任何 & 更改为 %26。你可能想
encodeURIComponent()
全文。
注意:我建议的原始函数是 escape()。
【讨论】:
escape 不适合 URL 编码; EncodeURIComponent 是正确的。 escape 真的不应该用于任何事情。
使用encodeURIComponent 函数。您可以自己将其更改为%26,但使用提供的功能更安全,因为它可以处理任何其他可能在传输过程中搞砸的奇怪字符。
【讨论】:
element.href=;不要使用setAttribute,它在 IE 中的可读性较差并且存在各种错误。