我需要更改包含html的元素的内容。
我试过这个,但打印了html标签
$('#content-sections label').text('my text <span>a span element</span>');
按原样打印:
my text <span>a span element</span>
答案 0 :(得分:5)
您必须使用html()
。例如:
$('#content-sections label').html('my text <span>a span element</span>');
哦,为了更好的表现,请改用:
$('#content-sections').find('label').html('my text <span>a span element</span>');
答案 1 :(得分:1)
尝试:
$('#content-sections label').html('my text <span>a span element</span>');
但我对你的“包括使用jquery的html文本感到困惑”
答案 2 :(得分:1)
你必须设置html(value) function,它设置匹配元素集中第一个元素的HTML内容。
$('#content-sections label').html('my text <span>a span element</span>');
答案 3 :(得分:0)
您必须像下面的代码一样使用
$('#content-sections label').html('my text <span>a span element</span>');
jQuery.html()
将字符串视为HTML,jQuery.text()
将内容视为文本,这也是打印span
标记的原因。
答案 4 :(得分:0)
Aurelio的回答解决了你的问题。
但是如果你需要整个html节点结构,最好这样使用:
var span = $("<span />").text('a span element');
$('#content-sections label').text('my text').append(span);
第一行创建带有内容的范围
第二件事做了两件事,它首先设置标签的文本,然后在该文本之后添加在第一行中创建的范围。