I need help
I’m using EJS javasript template to write a code snippet two check a radio button depending on data returned from the server. Let say the server returns a json (named my_data) and here is my code
<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ %> <%='checked' %> <% } %> />Public
<input type="radio" name="is_public" value=0 <% if(!my_data.is_public){ %> <%='checked' %> <% } %> />Private
But it doesnt work! the Public is always checked although my_data.is_public = 0.
Any one can help?
btw, are there the way to “echo” a text like this in EJS:
<input type="radio" name="is_public" value=1 <% if(my_data.is_public){ echo 'checked' } %> />Public
Never used EJS, but from experience from other templating engines, this should work:
When you say
<%=, you are to output the result of a JavaScript evaluation that follows. E.g.<%= a %>should output the contents of variableaat that time.There’s no need for explicit echo in templates – anything outside
<% %>should be echoed by default, of course considering that some blocks are conditionally echoed, like the aboveif, or may be multiplied when using loops, etc.