#jquery #jquery-templates
#jquery #jquery-шаблоны
Вопрос:
У меня есть документ со следующим типом документа:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="ru">
Шаблоны объявляются следующим образом:
<script id="tmpl-periods-options" type="text/x-jquery-tmpl">
{{each plans_array}}
<label><input type="radio" value="${$value.id}" name="pf-periods" {{if $value.selected}}checked="checked" {{/if}} />${$value.title}</label>
{{/each}}
</script>
http://validator.w3.org / показывает мне ошибки в html-коде, который объявлен внутри <script>
тега.
Есть ли какое-либо решение?
Ответ №1:
Обычные методы JavaScript не работают, поскольку это не JavaScript; простое перенос шаблона в //<![CDATA[ ... //]]>
or //<!-- ... //-->
только усугубляет проблемы.
Как было предложено в этом сообщении в блоге, кажется, что наилучшими вариантами являются либо использование HTML 5, либо помещение шаблона во внешний файл и включение этого.
$(document).ready(function() {
$.get('template.html', function(content) {
$.template('template name', content);
});
});
Комментарии:
1. Да, я пробовал CDATA в первую очередь, безуспешно — final
]]>
стал частью шаблона (хотя его можно удалить).