У меня есть простой вопрос о том, как Rails 3 работает с доктринами XHTML. Поскольку Rails 3 использует UJS для своих аякс-вызовов (и даже обычных вызовов, таких как удаление вызовов), и делает это с использованием атрибутов данных HTML5, то, поскольку XHTML не поддерживает атрибуты данных, будет ли разметка автоматически недействительной?Rails 3 UJS и XHTML
ответ
Атрибуты data-*
действительны в XHTML5, что является одним из кодировок HTML5. Они недействительны в XHTML 1.0, но это, вероятно, не большая проблема.
Скорее всего, если вы обслуживаете свой контент в реальных браузерах, они анализируют его как HTML, а не XHTML. Если вы обслуживаете свой контент как text/html
, браузеры будут анализировать его как HTML. Если вы обслуживаете его как application/xhtml+xml
, IE 6 будет отображать его как необработанный XML, а не как HTML, а в других браузерах, если вы допустили одну небольшую ошибку, они перестанут анализировать его и отобразить уродливое сообщение об ошибке, а не просто продолжать попытки для анализа остальной части содержимого. Если вы обслуживаете его как text/html
, то браузеры будут анализировать его как text/html
, поэтому не имеет значения, действительно ли он XHTML или нет.
Даже если он недействителен XHTML 1.0, он по-прежнему хорошо сформирован, а веб-браузеры не проверяют пользовательские агенты, поэтому, действительно ли контент действителен или нет, это не имеет большого значения. Весь смысл атрибутов data-*
- предоставить личные данные скриптам на странице. Поскольку атрибуты data-*
не препятствуют правильному оформлению документа, браузер все равно будет синтаксически разбирать документ, и ваши сценарии, таким образом, будут иметь доступ к данным, независимо от того, действительны ли данные XHTML.
Результат: эти атрибуты действительны в HTML5 и XHTML5. Они недействительны в XHTML 1.0, но это не имеет особого значения, поскольку эти атрибуты будут работать во всех основных браузерах, чтобы предоставлять личные данные скриптам на вашей странице.
- 1. Rails 3 UJS затрудняет создание кнопки «Назад»
- 2. Рельсы 3 события водителя UJS
- 3. Выпадение Bootstrap 3 и Rails UJS конфликт в IE
- 4. Проблема с AJAX и UJS с JQuery в Rails 3
- 5. Rails AJAX UJS Вопрос
- 6. $ .ajaxSend, $ .ajaxComplete, Rails UJS и Chrome
- 7. Раис 3 UJS неожиданное поведение
- 8. Rails 3 UJS Ajax шаблон/стратегия, какая из них лучше?
- 9. Rails 3 UJS dry Клиент + сервер Боковая форма проверки
- 10. Rails 3 UJS - контроллер дважды вызывается link_to: remote
- 11. Простые UJS с jQuery, не работающие в Rails 3
- 12. Rails 3: удаленная (UJS) форма обрабатывается действием индекса вместо создания
- 13. Rails 3 UJS: Попутный в Params при использовании link_to
- 14. Rails 3 UJS - при наведении курсора, не на клик
- 15. Rails UJS меняет поля ввода
- 16. rails ujs - javascript не исполняется
- 17. Rails UJS ajax: не уволен
- 18. jquery-ujs уже загружен rails
- 19. Rails Custom Route с UJS
- 20. Rails UJS-рендеринг js.erb шаблон в IE
- 21. Rail 3 Комплекс UJS образует несколько полей_for
- 22. ajaxSetup не работает с Rails/jquery-ujs
- 23. Rails UJS для динамически добавленного контента
- 24. Rails UJS с параметрами URL-адресов проблема
- 25. Rails: обновление записи с использованием ujs
- 26. Организация и инициализация кода UJS
- 27. Плагин/Gem, чтобы получить Rails 3 стиля UJS в Rails 2.3.x?
- 28. Базовый UJS AJAX Rails 3.0 Обновление Вопрос
- 29. Как использовать переменные экземпляра в rails ujs?
- 30. Rails UJS «on» для обработки события ajax
Хороший ответ. Слишком много людей в наше время слепо жестоко относятся к строгой действительности. –