将数字表示为段落中的货币

Represent number as currenct from paragraph

在我的网页上有一段看起来像这样:

<p class="article-content mb-1" id="cost"><strong>Cost [Euro]: </strong>1000000</p>

数字总是其他东西(我从数据库中读取并使用 Django 形式表示),我想将其表示为货币(在本例中为 1.000.000)。 我试图通过以下方式获取值:

function on_load() {
  var a = document.getElementById('cost').value;
  console.log(a)
}
on_load();
<p class="article-content mb-1" id="cost"><strong>Cost [Euro]: </strong>1000000</p>

但控制台输出为:'undefined'。当我获得价值时,我会使用类似

的东西
(12345.67).toFixed(2).replace(/\d(?=(\d{3})+\.)/g, '$&,');  // 12,345.67

转换为货币。

p 没有值属性。您可以使用 intl number format

来获取和格式化数字

function on_load() {
  const costs = document.querySelector('#cost');
  let number = costs.childNodes[1].textContent;
  costs.childNodes[1].textContent = new Intl.NumberFormat('de-DE').format(number);
}
on_load();
<p class="article-content mb-1" id="cost"><strong>Cost [Euro]: </strong>1000000</p>