如何在HTML元素中替换此文本
How can I replace this text in an HTML element?
我有一个字符串显示为"Banana"
我想把它换成"苹果"
这就是我的
<span id="Fruit">Banana</span>
这是我正在使用的脚本。
var td1 = document.getElementById('Fruit');
var text = document.createTextNode("Apple");
td1.appendChild(text);
这就是它的表现。
香蕉苹果
<span id="Fruit">
"Banana"
"Apple"
</span>
我怎么能去掉香蕉,换成苹果?
<span id="Fruit">Apple</span>
只需更新innerHTML:http://jsfiddle.net/SNtmL/
document.getElementById('Fruit').innerHTML = "Apple";
假设单个textNode
:
var td1 = document.getElementById('Fruit'),
text = document.createTextNode("Apple");
td1.replaceChild(text,td1.firstChild);
JS Fiddle演示。
或者:
var td1 = document.getElementById('Fruit');
td1.firstChild.nodeValue = 'Apple';
JS Fiddle演示。
或者:
var td1 = document.getElementById('Fruit'),
text = 'textContent' in document ? 'textContent' : 'innerText';
td1[text] = 'Apple';
JS Fiddle演示。
参考文献:
- CCD_ 2
Node.replaceChild()
您不需要新的文本节点,而是需要更改现有的文本节点。
一个快速而肮脏的解决方案是:
document.getElementById("Fruit").innerHTML = "Apple";
为了更有效地从父级中删除所有节点,您可以始终使用while()
条件:
var td1 = document.getElementById("Fruit"), text = document.createTextNode("Apple");
while(td1.hasChildNodes()) {
td1.removeChild(td1.firstChild);
}
td1.appendChild(text);
相关文章:
- JavaScript 在页面加载后替换文本
- 原型JS查找跨度并替换文本
- jQuery在iFrame Src中查找和替换文本
- 用“$$$”替换文本,在Javascript中给出截断的结果
- 如何替换文本区域中的换行符
- 使用 JavaScript 正则表达式替换文本中的类似字符串
- 如何使用 jQuery 替换文本中的 HREF 链接
- :包含不区分大小写的解决方案在替换文本以突出显示时不起作用
- 遍历DOM和替换文本的最佳方法
- Qualtrics(Javascript)-矩阵表-用下拉列表替换文本输入字段
- 使用筛选器替换文本
- JavaScript无法用新文本替换文本
- 替换文本中的随机youtube链接以使用javascript嵌入代码
- 在模态激发后替换文本
- JQuery如何替换文本区域内的字符串
- 可以动态设置图像替换文本吗
- 如何使用javascript在单个正则表达式中递归替换文本字符串中重复的逗号
- 在不更改布局的情况下替换文本的解决方案(jQuery)
- 使用Javascript替换文本区域中的文本
- Imacros替换文本元素