Javascript 用asterix替换HTML元素中所有可能的文本
我想知道是否有任何方法可以将HTML元素中的所有文本更改为asterixJavascript 用asterix替换HTML元素中所有可能的文本,javascript,jquery,html,css,element,Javascript,Jquery,Html,Css,Element,我想知道是否有任何方法可以将HTML元素中的所有文本更改为asterix <div id="1"> Text <div> text <span>text</span> </div></div> 正文 文本 文本 因此,它将只针对id为“1”的div,将上面示例中的所有“text”替换为“***”。当然,只需调用.text(): $(“#1”)。替换为“*******” 使用replaceWith方法 <s
<div id="1">
Text
<div>
text
<span>text</span>
</div></div>
正文
文本
文本
因此,它将只针对id为“1”的div,将上面示例中的所有“text”替换为“***”。当然,只需调用
.text()
:
$(“#1”)。替换为“*******”
使用replaceWith方法
<script>
$(document).ready(function(){
$("button").click(function(){
$("#1").replaceWith("******");
});
});
</script>
$(文档).ready(函数(){
$(“按钮”)。单击(函数(){
$(“#1”)。替换为“*******”;
});
});
要更改页面加载,请使用此
<script>
$(document).ready(function(){
$("#1").replaceWith("******");
});
</script>
$(文档).ready(函数(){
$(“#1”)。替换为“*******”;
});
要用星号替换任何字母数字字符,请使用:
$('#1').contents().each(function(){
var prop = this.nodeType === 3 ? 'nodeValue' : 'innerText';
this[prop] = this[prop].replace(/\w/g,'*');
});
不是这样的。元素§呢?编辑:这就是OP所寻找的,嗯……唯一的问题是,这不适用于div内的表。因为它删除de和tags,所以您需要遍历DOM,更改在该
div
下找到的所有文本节点的textContent
那太好了!你能解释一下if语句的作用吗?那就是处理不能在其上使用ìnnerText
$('#1').contents().each(function(){
var prop = this.nodeType === 3 ? 'nodeValue' : 'innerText';
this[prop] = this[prop].replace(/\w/g,'*');
});