Действительная ссылка с параметрами GET - PullRequest
1 голос
/ 01 февраля 2011

Как я могу разместить действительную ссылку с параметрами получения на моей странице?

Когда я запускаю валидатор, выдает ошибку:

Line 37, Column 37: reference to entity "p" for which no system identifier could be generated
<li><a href="index.php?c=tutorials&p=cat&cid=1" >LINK</a></li>

Ответы [ 5 ]

4 голосов
/ 01 февраля 2011

отсюда http://css -discuss.incutio.com / wiki / Code_Validation

Наиболее распространенная ошибка на данный момент выглядит примерно так: ссылка на сущность "BV_Engine", для которой нетсистемный идентификатор может быть сгенерирован.Это означает, что у вас есть URL с символом &, в котором вы забыли скрыться.

Например: <a href="script.cgi?id=4&BV_Engine=20">

Знак & в этом URL должен быть&.Фактически, ВСЕ & знаки в документе HTML должны быть экранированы таким образом, чтобы избежать путаницы с анализаторами HTML.Для приведенного выше примера, заменив его на

<a href="script.cgi?id=4&amp;BV_Engine=20">
2 голосов
/ 01 февраля 2011

Побег свои амперсанды:

<li><a href="index.php?c=tutorials&amp;p=cat&amp;cid=1" >LINK</a></li>
1 голос
/ 01 февраля 2011

Вы должны использовать & вместо простого &. Это HTML-сущность.

<li><a href="index.php?c=tutorials&amp;p=cat&amp;cid=1" >LINK</a></li>
0 голосов
/ 05 сентября 2014

Чтобы быть совместимым с XHTML XML в целом), амперсанд должен * экранироваться .Для этого необходимо использовать SGML / XML-сущность .

Для представления амперсанда можно использовать три разных сущности:

  1. Именованная сущность: &amp; (Это одна из пяти предопределенных сущностей , определенных в спецификации XML.)

  2. Десятичная цифровая ссылка на символ : &#38;

  3. шестнадцатеричная цифровая ссылка на символ : &#x26;

Итакзначение вашего примера href атрибута может быть представлено одним из следующих трех способов:

href="index.php?c=tutorials&amp;p=cat&amp;cid=1"
href="index.php?c=tutorials&#38;p=cat&#38;cid=1"
href="index.php?c=tutorials&#x26;p=cat&#x26;cid=1"

Конечно, было бы правильно смешать вышеперечисленные объекты следующим образом:

href="index.php?c=tutorials&amp;p=cat&#38;cid=1"
                           ^^^^^     ^^^^^

... но большинство будет настаивать на последовательном подходе ко всему документу (и даже ко всему веб-сайту).

Из трех сущностей, которые можно использовать для представления амперсанда, я считаю, что &amp; чаще всего используется в XHTML.

Заключительное примечание: Одна из вышеуказанных сущностей следует также использовать при создании HTML , однако сегодня браузеры не требуют экранирования .

0 голосов
/ 23 марта 2011

Да, как уже писали другие, вам нужно экранировать свои ампарсанды как & amp; а не &.

<li><a href="index.php?c=tutorials&amp;p=cat&amp;cid=1">LINK</a></li>

должно работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...