回答
你应该URL Encode的超链接,所以所有字符都转换成有效的ASCII格式,不包含任何(X)的HTML实体。
对于C#使用HttpUtility.UrlEncode
,对于PHP urlencode
,对于JavaScript encodeURI
等等...找到正确的方法对于您正在使用的语言应该不那么难。
你让他们&在这样的链接?
&
我的代码漂亮标准的代码只有把它失败中的一些超链接的URL,由于&符号。
转义的&符号在网址(或其他地方,如果他们不是一个HTML实体的一部分!)不“好符合标准的代码”。
把它们变成&
,你可以准确地声称做到了这一点。
语法纳粹:/替换不符合不 –
+1还不错知道:未屏蔽的'&'将计为无效*甚至在JavaScript块*中,除非它们被封装在'CDATA'标签中。 –
谢谢你们的回复。网址编码对我来说是新的,我正在研究它。有一个很好的链接到上面Ronald提供的W3C URL编码页面。 –
CDATA工作,你在JavaScript字符串有&奇迹..
- 1. JSF 1.2注入导致w3c的javaScript验证失败
- 2. th colspan失败w3c验证
- 3. 导致HTML5验证失败
- 4. 由于SessionLoaderExceptions导致Ant链接验证失败
- 5. URL在W3C HTML/XHTML验证中失败
- 6. XS:Group导致Schema验证失败
- 7. 比较使用Dataanotations导致验证失败的字段验证
- 8. 导致w3c验证错误的分隔符
- 9. Asp.net链接RUNAT服务器W3C验证
- 10. 转义导致JSON验证失败的隐藏字符
- 11. 链接Github上,以Namecheap:验证失败
- 12. 由于“身份验证协议被拒绝”导致MySQL ODBC链接失败
- 13. Shoulda Matcher自定义验证导致所有shoulda验证失败
- 14. 超链接不断失败
- 15. com.mysql.jdbc.exceptions.jdbc4.CommunicationsException:通信链接失败软件导致连接中止:recv失败
- 16. Dublin Core和Metaname导致HTML5中的W3C验证问题页面
- 17. phpMyAdmin导致连接失败
- 18. Php中的签名问题导致API身份验证失败
- 19. Seam/JSF中的验证失败导航
- 20. git svn分支导致“服务器SSL证书验证失败”
- 21. Rails.application.initialize后导致SSL证书验证失败
- 22. 新验证会导致旧迁移在Rails中失败
- 23. 生成的元标记失败w3c验证
- 24. Facebook的Like按钮和W3C验证失败
- 25. 超链接和有效的W3C标记
- 26. Pycharm GitHub的“推送失败:致命的:验证失败”
- 27. 单选按钮验证导致验证失败的其余部分
- 28. 导致保存失败的DataMapper关联/验证
- 29. Django验证 - 成功和失败导致相同的行为
- 30. 由于Gradle导致的Firebase身份验证失败?
'htmlspecialchars'(http://php.net/manual/en/function.htmlspecialchars.php)实际上比'urlencode'好。 – ceejayoz
...我会尽可能地称它为必要*。 'urlencode()'是错误的方法。 &符号在URL(GET参数分隔符)中具有特殊含义,'urlencode()'将*移除*意味着通过转义它们。我们不想在URL上下文中编码&符号。我们想要在HTML上下文中编码&符号。 'htmlspecialchars()'做到了。 – pinkgothic