2016-10-15 2 views
-2

텍스트 노드 t에 줄 바꿈 (줄 바꿈 시작)을 지정하려는이 코드가 있습니다. 그러나 LINEBREAK은 추가되지 않습니다 :(텍스트 노드에 줄 바꿈을 만드는 방법

이 도와주세요 ...

// Create a new list item when clicking on the "Add" button 
function newElement() { 
    var li = document.createElement("li"); 
    var inputText = document.getElementById("myInput").value + document.createElement("br") + "ddd" ; 
    var t = document.createTextNode(inputText); // this text node is supposed to have a linebreak 
    li.appendChild(t); 
    li.value = document.getElementById("myValue").value; 
    if (inputText === '') { 
     alert("You must write something!"); 
    } else { 
     updateLI(li); 
     document.getElementById("myUL").appendChild(li); 
    } 
    document.getElementById("myInput").value = ""; 
    document.getElementById("myValue").value = ""; 
} 
+0

제 편집을 검토하십시오. 나는 그 문구를 분명히했지만 나는 그것이 당신이 의미하는 바를 100 % 확신하지 못했습니다. 문제를 재현 할 수 있도록 html을 추가하십시오. – YakovL

+0

텍스트 노드에 줄 바꿈이 있어야합니다. 첫 줄에는 "myinput"이 있고 다음 줄에는 "ddd"가됩니다. –

답변

0

여기에 주요 문제는 다른 요소를 포함 할 수없는 텍스트 노드이며에 br 요소를 추가하려는 . 그것은 당신이 필요로하는 무엇인가

는 텍스트 노드에 \n 문자를 추가하는 것은 도움이되지 않습니다 염두에
function newElement() { 
    var li = document.createElement("li"); 
    var inputText = document.getElementById("myInput").value; 
    li.appendChild(document.createTextNode(inputText)); 
    li.appendChild(document.createElement("br")); 
    li.appendChild(document.createTextNode("ddd")); 

    ... 

유지하거나 HTML을 하나의 공백 기호에 대한 모든 공백을 "변환"때문에 - 당신이 white-space: pre;을 사용하지 않는 즉 당신의 엘에 적용된 CSS 멘토 (문제 해결을위한 또 다른 옵션).

+0

감사합니다 !!!!!! –

관련 문제