Jquery 为什么可以';我不能简单地在文本前加上前缀吗?

Jquery 为什么可以';我不能简单地在文本前加上前缀吗?,jquery,Jquery,在回答一个问题时,我遇到了一些问题。我试图简单地预编课文,但做不到 <div> <span>some</span> </div> 那么,我怎么能简单地只在文本前加上前缀呢 更新: 哦!!很抱歉,这起作用了,但看到这个了吗 它不起作用了 您正在删除元素,然后使用prepend将其作为目标。不能将内容前置到不再存在的元素。使用end(),再次将DIV的内容作为目标: 只能在引用DOM元素的jQuery对象上添加前缀。除此之外,如果您预先添

在回答一个问题时,我遇到了一些问题。我试图简单地预编课文,但做不到

<div>
    <span>some</span>
</div>
那么,我怎么能简单地只在文本前加上前缀呢


更新:

哦!!很抱歉,这起作用了,但看到这个了吗


它不起作用了

您正在删除元素,然后使用prepend将其作为目标。不能将内容前置到不再存在的元素。使用
end()
,再次将DIV的内容作为目标:


只能在引用DOM元素的jQuery对象上添加前缀。除此之外,如果您预先添加已删除的内容,您将不会看到任何效果。如果
获取(0)
文本节点,则可以更改其内容:

var ur_text = "your text";
$('.booktext').contents().filter(function(){
    return this.nodeType !== 1;
}).get(0).textContent = ur_text;

在这里工作正常:您检查过控制台有无错误吗?欢迎继续你能告诉我们“不工作”是什么意思吗?当然,它不是为接受纯文本而设计的。但它最终接受HTML。请检查更新的一个!嗯。。。就这样。谢谢
$('div').prepend('prepended text here');
$('div').prepend(html('prepended text here'));
$('div').prepend(text('prepended text here'));
$('.booktext').contents().filter(function(){
return this.nodeType !== 1;
}).remove().prepend('your text');
var ur_text = "your text";
$('.booktext').contents().filter(function(){
     return this.nodeType !== 1;
}).remove().end().prepend('your text');
var ur_text = "your text";
$('.booktext').contents().filter(function(){
    return this.nodeType !== 1;
}).get(0).textContent = ur_text;