Print raw html strings on EJS

Problem

I'm using express.js with EJS templates and i'm trying to do something like this:

<%= "<a href='#'>Test</a>" %>

but it prints this:

&lt;a href='#'&gt;Test&lt;/a&gt;

how can i print "html safe" strings?

Problem courtesy of: Rogerio Chaves

Solution

You should use html code everywhere, and use the EJS tags only where you need dynamic data. Example:

<a href='<%= user.id %>'><%= user.name %</a>

To specifically answer your question you can use <%- "<tags_here>" %> to output unescaped HTML data.

Solution courtesy of: alessioalex

Discussion

for raw output html in ejs you can use this code

<%- "<a href='#'>Test</a>" %>
Discussion courtesy of: Ivan Zhirkov

This recipe can be found in it's original form on Stack Over Flow.