Подтвердить что ты не робот

Как вставить элемент javascript textNode в строке новой строки

Я вставляю несколько textNodes в javascript и не могу понять, как их разделить с возвратом каретки. Я попытался поставить "\n", "\ r" и "
", но никто из них не работает

var textNode = document.createTextNode("Node on line 1");
element.appendChild(textNode);

textNode = document.createTextNode("Node on line 2");
element.appendChild(textNode);

Я хочу, чтобы это выглядело следующим образом:

Node в строке 1

Node в строке 2

НЕ

Node в строке 1Node в строке2

Любые советы о том, как я могу это сделать?

4b9b3361

Ответ 1

Используйте <br>, чтобы отделить их так, как это.

var br = document.createElement("br");
element.appendChild(br);

Ответ 2

Механизмы рендеринга не учитывают возврат строки и возврат каретки. Лучше, если вы используете <br /> следующим образом:

var textNode = document.createTextNode("Node on line 1");
element.appendChild(textNode);

var linebreak = document.createElement('br');
element.appendChild(linebreak);

var linebreak = document.createElement('br');
element.appendChild(linebreak);

textNode = document.createTextNode("Node on line 2");
element.appendChild(textNode);

Спасибо Дуг Оуингс. Также http://jsfiddle.net/Q8YuH/3/

Ответ 3

Чтобы сделать его идеальным.

function addText(node,text){     
         var t=text.split(/\s*<br ?\/?>\s*/i),
             i;
         if(t[0].length>0){         
           node.appendChild(document.createTextNode(t[0]));
         }
         for(i=1;i<t.length;i++){
            node.appendChild(document.createElement('BR'));
            if(t[i].length>0){
              node.appendChild(document.createTextNode(t[i]));
            }
         } 
}            
addText(document,"Line 1 <br> Line 2<br/>line 3<BR/>");

Ответ 4

var textNode = document.createTextNode("Node on line 1");
element.appendChild(textNode);

var linebreak = document.createElement('<br >');
element.appendChild(lineBreak);

textNode = document.createTextNode("Node on line 2");
element.appendChild(textNode);

Ответ 5

Мое предположение заключается в том, что вы пытаетесь отображать их отдельно в виде HTML, а не в представлении ТЕКСТ, и в этом случае вам нужно вставить теги <br /> между текстовыми узлами через document.createElement('br'), чтобы отображать их на отдельных строках. использование \r или \n влияет только на то, как оно выглядит в исходном представлении.