Амперсанды в гиперссылках приводят к сбою проверки W3C - PullRequest
3 голосов
/ 20 марта 2010

У меня повторяющаяся проблема. Я кодирую код, соответствующий стандартам, только чтобы он не работал из-за амперсандов в некоторых URL-адресах гиперссылок.

Кто-нибудь знает обойти или взломать для этого.

Спасибо

Ответы [ 4 ]

13 голосов
/ 20 марта 2010

Я пишу код, соответствующий стандартам, только чтобы он не работал из-за амперсандов в некоторых URL-адресах гиперссылок.

Неэкранированные амперсанды в URL (или где-либо еще, если они не являются частью сущности HTML!) не"хороший код, соответствующий стандартам".

Превратите их в &, и вы можете точно утверждать, что сделали это.

5 голосов
/ 20 марта 2010

Вы сделали их и в ссылках, как это?

&
2 голосов
/ 20 марта 2010

Вы должны URL кодировать гиперссылки, чтобы все символы были преобразованы в действительный формат ASCII и не содержали (X) HTML-сущностей.

Для C # используйте HttpUtility.UrlEncode, для PHP urlencode, для JavaScript encodeURI и т. Д. ... Поиск правильного метода для языка, который вы используете, не должен это не так сложно.

0 голосов
/ 01 сентября 2010

CDATA творит чудеса, где у вас есть & в строках javascript ..

...