За именем атрибута "p:autofocus", связанным с типом элемента "h:inputText", должен следовать символ "="

Кажется, что есть ошибка при использовании некоторых атрибутов HTML 5 с использованием passthrough пространство имен, то есть:

<h:inputText id="text1" p:autofocus p:placeholder="this is a placeholder text"></h:inputText> 

Когда я пытаюсь запустить страницу в Glassfish, я получаю эту ошибку:

Error Parsing /index.xhtml: Error Traced[line: 19] Attribute name "p:autofocus" associated with an element type "h:inputText" must be followed by the ' = ' character.

Обратите внимание, что атрибут placeholder работает нормально, только те, которым не нужно указывать значение (=""), например autofocus терпят неудачу.

Это известная ошибка?

1 ответ

Решение

Нет, это вызвано стандартом XHTML:

XML не поддерживает минимизацию атрибутов. Пары атрибут-значение должны быть записаны полностью. Имена атрибутов, такие как компактный и проверенный, не могут встречаться в элементах без указания их значения.

С http://www.w3schools.com/tags/att_input_autofocus.asp

Различия между HTML и XHTML

В XHTML минимизация атрибутов запрещена, и атрибут автофокуса должен быть определен как <input autofocus="autofocus" />,

Другие вопросы по тегам