首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >替换".“用",“表示艺术尺寸

替换".“用",“表示艺术尺寸
EN

Stack Overflow用户
提问于 2020-07-09 02:12:56
回答 8查看 57关注 0票数 1

我有一个具有法语和英语维度的网站。例如,我有一张尺寸为36 x 46.5厘米的图像。因为它是法语,所以点(".")应为逗号(",")。

结构:

代码语言:javascript
复制
<div class="wrapper">
  <span class="custom-field">46.5</span>
</div>

我的代码:

代码语言:javascript
复制
<script>
var period = document.getElementsByClassName("custom-field");
var comma = period.replace(".",",");
document.getElementsByClassName("custom-field").innerHTML = comma
</script>

控制台告诉我period.replace(".",",")不是一个函数。请提前给予帮助和感谢。

EN

回答 8

Stack Overflow用户

发布于 2020-07-09 02:20:10

period实际上不是一个字符串,它是一个HTMLElements数组,所以如果你想使用replace方法,它应该在string上。您可以像这样访问span数据:

代码语言:javascript
复制
var period = document.getElementsByClassName("custom-field")[0].innerHTML;
var comma = period.replace(".",",");

如果你想全部改变它们,你可以这样做:

代码语言:javascript
复制
var customFields = document.getElementsByClassName("custom-field");
for (let i = 0; i < customFields.length; i++) {
 customFields[i].innerHTML = customFields[i].innerHTML.replace(".",",") 
};
票数 1
EN

Stack Overflow用户

发布于 2020-07-09 02:20:11

因为HTMLCollection,是document.getElementsByClassName的结果,所以你需要遍历它。

试着这样做:

代码语言:javascript
复制
var period = document.getElementsByClassName("custom-field");

for (let item of period) {
  item.innerHTML = item.innerHTML.replace(".", ",");
}
代码语言:javascript
复制
<div class="wrapper">
  <span class="custom-field">46.5</span>
</div>

票数 1
EN

Stack Overflow用户

发布于 2020-07-09 02:20:17

使用document.querySelector获取与选择器匹配的第一个元素,并使用.textContent获取其文本。

代码语言:javascript
复制
var el = document.querySelector('.custom-field');
el.textContent = el.textContent.replace(".", ",");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62801095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档