[英]Appending HTML-encoded string as HTML, not as text
我正在尝试追加这个字符串:
<div> hello </div>
作为HTML节点,但它不是附加HTML而只是附加文本:
<div> hello </div>
如何让jQuery将其作为HTML节点附加,而不仅仅是文本?
如果可能的话,我想要一个适用于嵌套div和文本的解决方案。
// This is your string :)
var myString = "<div> hello </div>";
// This is a way to "htmlDecode" your string... see link below for details.
myString = $("<div />").html(myString).text();
// This is appending the html code to your div (which you don't have an ID for :P)
$("#TheDivIWantToChange").append(myString);
您可以使用.createElement('div')
创建一个新的div。 然后只需更改新元素的HTML即可。
$(document.createElement('div').html('<p>All new content.</p>'));
要将新元素附加到DOM,请使用element.append()
或.appendTo(element)
追加到您选择的元素。
也许这有点冗长,但这通常是我处理这样的事情:
var div = $(document.createElement("div"));
div.text(" hello "); //Or div.html(" hello ") if need be...
$("#divtoappendto").append(div);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.