Вы можете создавать шаблоны во внешних файлах и вызывать их с помощью $.getScript
.
Например:
example.html
<script src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.6.4.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.templates/beta1/jquery.tmpl.js"></script>
<script>
$(function() {
$.getScript('./template.js', function(data) {
$.tmpl("message", { id:1, msg:"Some Message!" } ).appendTo('#output');
});
});
</script>
<body>
<div id="output"></div>
</body>
template.js
$.template("message", '<a href="/message/${id}">${msg}</a>');
Единственная проблема с тестированием заключается в том, что браузеры обычно не разрешают доступ к файлам для запросов AJAX, поэтому вам придется выбросить его на локальный веб-сервер, чтобы опробовать.
редактирование:
По-видимому, вы также можете форсировать html-запросы:
$.get('./template2.js', function(data) {
$.template("message2", data);
$.tmpl( "message2", { id:1, msg:"Some Message!" } ).appendTo('#output');
}, 'html');
template2.js
<p id="script2">
<a href="/message/${id}">${msg}</a>
</p>
Обратите внимание, что после обратного вызова в $.get
я явно указываю 'html'.