Javascript 删除后面的文本(<;span>;并附加其他文本

Javascript 删除后面的文本(<;span>;并附加其他文本,javascript,jquery,html,Javascript,Jquery,Html,jQuery试图删除标记后的文本以附加其他文本时遇到问题 示例: <div id="foo-id"> <span id="span-id"> <i id="icon-id" class="fa fa-square-o"></i> </span> text..here... (this text needs to be removed) </div> $('#foo-id').af

jQuery试图删除标记后的文本以附加其他文本时遇到问题

示例:

<div id="foo-id">  
    <span id="span-id">  
        <i id="icon-id" class="fa fa-square-o"></i>  
    </span> text..here... (this text needs to be removed)
</div>
$('#foo-id').after()[0].append('this is a text');

但是如何删除/清除标记后的文本以附加新标记

假设
#foo id
中没有其他文本节点,您可以执行以下操作:

$('#foo id').html(函数(){
return$(this).children();//只返回元素,不返回文本节点
}).append('somenewtext')

文本..这里。。。(此文本需要删除)

您可以选择
\span id
.nextSibling
,设置
\text
节点的
.textContent

$(“#foo id#span id”)[0].nextSibling.textContent=“abc123”

文本..这里。。。(此文本需要删除)

太棒了。我喜欢它,请不要误解我的问题,有没有最适合学习jQuery或Javascript的教程practice@JishnuVS网络上充满了教程和学习资源,这是一个很好的答案!!真的很棒!非常感谢!!我希望这个问题/答案能帮助很多人!但请注意,因为如果将任何事件侦听器分配给跨度或图标,它将替换内部html,因此它们将丢失,除非它们被删除delegated@guest271314我从来没有想过,但是是的,谢谢你的回答!我在这里测试过,效果非常好!!我没有检查你的答案是最好的,因为另一个朋友先回答了。多谢各位!这是另一种方法!!:)实际上,这个答案更好,因为它涵盖了在span id元素之前有另一个文本不应删除的情况。