我有一个包含对象的数组,其中一些对象在字符串中包含下划线。
示例:
{"name": "My_name"}
但是我在多个地方调用了name函数,其中一个这样的地方是在需要下划线的图像标记中,使用JavaScript,我想选择一个包含名称的特定div,并用空格替换下划线。
示例:
<div>
<div class="name">
My_name
</div>
<img src="My_name.jpg"/>
</div>
在div.name
中,我希望它显示My name
而不是My_name
。
发布于 2012-08-05 01:26:54
您可以使用空格替换字符串中的所有下划线,如下所示:
str.replace(/_/g, ' ');
所以,在放入内容之前,只需这样做即可。如果以后需要执行替换,请使用each
进行循环
$('.name').each(function () {
this.textContent = this.textContent.replace(/_/g, ' ');
});
发布于 2020-09-16 23:08:09
ES2021引入了漂亮的replaceAll()-function,这意味着它可以写成:
str.replaceAll('_', ' ')
如果想要处理多个元素,只需循环遍历它们并使用forEach()
const elements = document.querySelectorAll('.name')
elements.forEach(e => e.innerText = e.innerText.replaceAll('_', ' '))
https://stackoverflow.com/questions/11810569
复制相似问题