W3C验证 - 无法在href中传递数组

时间:2013-11-11 23:06:21

标签: arrays href w3c-validation

我正在使用带有html5的w3c验证器。我有一个数组afilter[]=abc我正在传递href,我尝试按如下方式转义括号:

<a href='slideshowform.php?x=y&amp;afilter&#91;&#93;=abc'>phases of matter</a>

但我仍然收到错误:

 Bad value slideshowform.php?x=y&afilter[]=abc for attribute href on element a: Illegal character in query component.

如何在不出错的情况下传递数组 - 或者我是否错误地转移了括号?

1 个答案:

答案 0 :(得分:1)

您必须对其进行URL编码,而不是HTML编码。您的网址必须如下所示:

slideshowform.php?x=y&afilter%5B%5D=abc

大多数编程语言都内置了这样的内容(例如rawurlencode() in PHPencodeURI in JavaScript),或者您只需使用在线服务(无联盟,只是首批搜索结果之一){{3 }}

当然,编码HTML保留字符以便在HTML文档中输出链接也是一个好主意。因此,您最终会在HTML文档中使用以下网址。

slideshowform.php?x=y&amp;afilter%5B%5D=abc
相关问题