0

Is there a way to add new lines in javascript while printing html? So that the printed html is indented.

document.getElementById("id").innerHTML = "<div class="1"><div class="2">hello</div></div>"

Instead I want to something like this:

document.getElementById("id").innerHTML = "
<div class="1">
    <div class="2">
        hello
    </div>
</div>"
fhaider
  • 165
  • 2
  • 11
  • 1
    Sounds like you need something like heredoc. Did you check out this question: http://stackoverflow.com/questions/4376431/javascript-heredoc – ariestav Oct 11 '15 at 19:26

1 Answers1

1
document.getElementById("id").innerHTML =
   ['<div class="1">',
    '    <div class="2">',
    '        hello',
    '    </div>',
    '</div>',
   ].join('\n');

Or just escape new lines:

document.getElementById("id").innerHTML =
"<div class="1"> \
    <div class="2"> \
        hello \
    </div> \
</div>";

Or the same with jQuery:

$("#id").html(
"<div class="1"> \
    <div class="2"> \
        hello \
    </div> \
</div>");
Dmytro Shevchenko
  • 33,431
  • 6
  • 51
  • 67