6

我创建了一个多行字符串,如下所示“

var str1 = document.getElementById('text1');
var str2 = document.getElementById('text2');
var str = str1.value + "\n" + str2.value;

我现在想将此字符串添加到我在弹出窗口中创建的 div 中,如下所示:

myWindow=window.open('','Full_text','width=600,height=600');
myWindow.document.write('<div id="div1" style="position: absolute; left: 10px; width: 580px; top: 30px; height: 550px; overflow: auto;">' + str + '</div>');

但是我在 div 中没有得到多行字符串。我该如何解决这个问题?

4

2 回答 2

15

如果没有此 CSS 属性,则不会在 HTML 中呈现换行符:

white-space: pre;

您可以尝试替换str为:

var str = str1.value + "<br/>\n" + str2.value;
于 2012-07-12T09:48:29.393 回答
3

在 HTML 中渲染时不会出现换行符,如果你只需要换行符,请使用<br>而不是\n如果你想保留空格、制表符,你应该尝试用<pre>string goes here.</pre>标签包裹字符串。

于 2012-07-12T09:50:04.003 回答