Guidon Modèle de rendu du modèle en tant que texte
J'ai créé un helper dans le Guidon pour aider avec la logique, mais mon modèle d'analyse le code html renvoyé comme texte plutôt que html.
J'ai un quiz page de résultats est affichée après le jeu est terminé:
<script id="quiz-result" type="text/x-handlebars-template">
{{#each rounds}}
{{round_end_result}}
{{/each}}
<div class="clear"></div>
</script>
Pour chacun des tours, j'ai utiliser une aide à déterminer le modèle pour rendre un tour du résultat:
Handlebars.registerHelper("round_end_result", function() {
if (this.correct) {
var source = '';
if (this.guess == this.correct) {
console.log("correct guess");
var source = $("#round-end-correct").html();
} else {
var source = $("#round-end-wrong").html();
}
var template = Handlebars.compile(source);
var context = this;
var html = template(context);
console.log(html);
return html;
} else {
console.log("tie");
}
});
Ici est un modèle qui décrit un tour correct (prenons dire elle a rendu la #bout rond-modèle correct):
<script id="round-end-correct" type="text/x-handlebars-template">
<div></div>
</script>
Voici ce qui est affiché:
<div></div>
Pas en HTML, mais en tant que texte. Comment dois-je faire pour afficher le code HTML HTML, plutôt que du texte?
InformationsquelleAutor egidra | 2011-08-23
Vous devez vous connecter pour publier un commentaire.
Je suppose que unescaping dans le Guidon fonctionne de la même que la vanille Moustache.
Dans ce cas, l'utilisation de triple moustaches de ne pas encoder en html, i,e:
{{{unescapedhtml}}}
, comme:pour voir ref:
http://mustache.github.com/mustache.5.html
Geert-Jan réponses est correcte, mais juste pour la référence, vous pouvez également définir le résultat de la "sécurité" directement à l'intérieur de l'aide (code de handlebars.js wiki)
Avec qui vous pouvez utiliser les double poignée, {{ }} et le guidon ne pourrons pas échapper à votre expression.