How to append data to div using JavaScript?

前端 未结 11 2017
忘了有多久
忘了有多久 2020-11-22 09:39

I\'m using AJAX to append data to div element, where I fill the div from JavaScript, how can I append new data to the div without losing the previous data found in div?

11条回答
  •  南方客
    南方客 (楼主)
    2020-11-22 10:25

    IE9+ (Vista+) solution, without creating new text nodes:

    var div = document.getElementById("divID");
    div.textContent += data + " ";
    

    However, this didn't quite do the trick for me since I needed a new line after each message, so my DIV turned into a styled UL with this code:

    var li = document.createElement("li");
    var text = document.createTextNode(data);
    li.appendChild(text);
    ul.appendChild(li);
    

    From https://developer.mozilla.org/en-US/docs/Web/API/Node/textContent :

    Differences from innerHTML

    innerHTML returns the HTML as its name indicates. Quite often, in order to retrieve or write text within an element, people use innerHTML. textContent should be used instead. Because the text is not parsed as HTML, it's likely to have better performance. Moreover, this avoids an XSS attack vector.

提交回复
热议问题