Использую $.nano (по-моему я его немного подкрутил):
$.nano = function(template, data) {
return template.replace(/\{([\w\.]*)\}/g, function (str, key) {
var keys = key.split("."), value = data[keys.shift()];
$.each(keys, function () { value = value[this]; });
return (value === null || value === undefined) ? "" : ($.isArray(value) ? value.join('') : value);
});
};
<script id="results-tmpl" type="text/html">
<p>Correct: {correct}</p>
<p>Wrong: {wrong}</p>
</div>
</script>
$("#container").html($.nano($("#results-tmpl"), {correct : "1"}));