我有一些小模板字符串,它們將通過Mustache.js在同一頁面上呈現。我無需爲模板創建單獨的html文件。用於存儲模板如何在HTML頁面中正確存儲HTML模板?
選項:
在JavaScript變量存儲:hackish的多串,很多引號逃逸的。
存儲爲隱藏div的innerHTML。
我試過方法#2,但它似乎沒有正常工作。
小提琴: http://jsfiddle.net/RHwnq/2/
<html>
<head></head>
<body>
<div id='templates' class='hide' align="">
<div id='tableTemplate'>
<table class="table">
{{#name_list}}
<tr><td> {{name}} </td></tr>
{{/name_list}}
</table>
</div>
</div>
<script>
var template = $('#tableTemplate').html();
console.log(template);
</script>
</body>
</html>
此日誌:
{{#name_list}}
{{name}}
{{/name_list}}
<table class="table"><tbody><tr><td></td></tr></tbody></table>
相反的:
<table class="table">
{{#name_list}}
<tr><td> {{name}} </td></tr>
{{/name_list}}
</table>
這可能是由於瀏覽器的一些標記修正。 什麼是在HTML頁面中存儲HTML模板的其他好技巧?
如何不將它們存儲在同一個文件中,但通過AJAX加載它們? – feeela
@feeela不,我不想讓ajax調用加載2-3個小字符串,我打算將它們存儲在同一頁中。 – DhruvPathak
在與backbone.js/underscore.js相關的一些教程中,他們將模板存儲在標記中。仔細看看這個問題:http://stackoverflow.com/questions/4912586/explanation-of-script-type-text-template-script – Marc