Reputation: 12363
I'm just getting started using Mustache and I have this rendering problem. I send the data through a render function:
return Mustache.render(html, data);
or
return Mustache.to_html(html, data);
But the when I append it to a div like:
$('#jqt').append(html);
It gives back results like this, in actual text:
<div id="product_search_view"><form class="search-form" ><ul class="rounded"><li><input type="text" id="label" name="search" placeholder="Enter what you are looking for"></li></ul><a href="#" class="whiteButton submit" id="search-button" >Search</a></form><ul id="search-results" class="edgetoedge"></ul></div>
How can I get mustache not to put in those characters?
Upvotes: 3
Views: 8529
Reputation: 3111
I also got this weird issue last time, and I got to this hacky solution from somewhere
var temp = Mustache.to_html(template, data_sources );
var correct_temp = $('<textarea />').html(temp).val();
$('#my_el').html(correct_temp);
Don't know if it's a good practice.
Upvotes: 0
Reputation: 119837
Seems like you passed an already parsed HTML to Mustache.
Here's a section of the documentation that addresses escaped characters and the use of the "triple mustache".
Also, here's another documentation. Read the Tag Types section and the use of the &
to prevent escaping.
Upvotes: 11