Home
Run
Demo: Using JavaScript expressions and functions calls within templates.
HTML:
<script id="movieTemplate" type="text/x-jquery-tmpl">
<td>${Title}</td>
<td><b>Languages:</b>
<em>
{{each Languages}}
${$value.Name}{{if $index < Languages.length - 2}}, {{else $index === Languages.length - 2}} and {{/if}}
{{/each}}
</em><br/><br/>
<b>Subtitles:</b>
<em>
{{each( i, lang ) Subtitles}}
${namePlusSeparator( lang.Name, i, Subtitles.length )}
{{/each}}
</em>
</td>
</script>
Script:
function namePlusSeparator( name, index, length ){
var ret = name.toUpperCase();
if ( index < length - 1 ) {
if ( index === length - 2 ) {
ret += " and";
} else {
ret += ",";
}
}
return ret;
}