ICanHaz.js (ICH) может помочь вам в этом.
ICanHaz.js : простой / мощный подход для выполнения на стороне клиентаШаблоны с Mustache.js.
Я обнаружил, что смешивание шаблонов (в тегах сценариев) с обычным HTML на странице мешает моему редактору кода (подсветка синтаксиса, отступы и т. д.).Загрузка их как отдельного сервера сохраняет ваш HTML в чистоте.
Извлеките этот запрос ICH для автоматической загрузки <script type="text/html" src="my-templates.html"></script>
с вашего сервера в один шаблон на файл.
Вы также можете загрузить более одного шаблона для каждого удаленного HTML-файла , используя простой код, такой как:
function getTemplates(url) {
$.get(url, function (response) {
$('template', response).each(function () {
ich.addTemplate(this.id, $(this).text());
});
});
}
Или, если вы хотите, чтобы ICH автоматически загружал их с URL-адресов в вашемстраница:
<head>
<link rel="templates" type="text/html" href="my-templates.html">
</head>
$("link[type=templates]").each(function (index, link) {
getTemplates(link.attr("href"));
});
В вашем my-templates.html
<templates>
<template id="ul-template">
<ul id="list">
{{> li-templ}}
</ul>
</template>
<template id="ul-template2">
<div id="list2">
{{> li-templ}}
</div>
</template>
<template id="li-templ">
<p>{{ name }}</p>
</template>
</templates>