javascript – 在包含其他标记的标记中将一个文本替换为另一个文本
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 在包含其他标记的标记中将一个文本替换为另一个文本,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1162字,纯文字阅读大概需要2分钟。
内容图文
![javascript – 在包含其他标记的标记中将一个文本替换为另一个文本](/upload/InfoBanner/zyjiaocheng/804/3cd5cd2ce9844c2d9045d0d89a96a7da.jpg)
我有以下HTML元素:
<p id="myP">Some text<span onclick="myFunc()"> to change</span></p>
我的想法是当有人点击“更改”范围时,将“某些文字”替换为“其他文字”.所以我的第一次尝试是:
function myFunc(){
var myP = document.getElementById("myP");
myP.innerText = "Some other text";
}
…但是,我已经学会了from my mistakes,这不仅会覆盖文本,还会覆盖嵌套在p中的span元素.所以,使用上一次的学习,我试图创建一个文本节点:
function myFunc(){
var myP = document.getElementById("myP");
myP.appendChild(document.createTextNode("Some other text"));
}
然而,这显然是错误的,因为它会附加文本而不是替换它.我应该如何编写我的JavaScript函数来获取某些文本的纯替换以及其他一些文本,而不会影响嵌套范围?
我知道这似乎是一个基本问题,但我是一个完全的初学者,并不知道如何处理HTML对象.提前致谢
注意我认为我可以做到这一点:
myP.innerText = "Some other text<span onclick="myFunc()"> to change</span>"
…但除了复杂之外,因为这是一个最小化的例子w.r.t.真实的代码,我想这是有史以来最不优雅的解决方案,所以我想学习正确的方法.
解决方法:
只需获取textNode
function myFunc(){
var myP = document.getElementById("myP").firstChild;
myP.nodeValue = "Some other text";
}
<p id="myP">Some text<span onclick="myFunc()"> to change</span></p>
内容总结
以上是互联网集市为您收集整理的javascript – 在包含其他标记的标记中将一个文本替换为另一个文本全部内容,希望文章能够帮你解决javascript – 在包含其他标记的标记中将一个文本替换为另一个文本所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。