簡體   English   中英

將 javascript 應用於多個 div

[英]apply javascript to multiple divs

我有這樣的 JavaScript/HTML 代碼:

 const priceDiv = document.querySelector('#pprices'); priceDiv.textContent = (+priceDiv.textContent).toLocaleString('en-US');
 <div id="pprices">125135135</div> <div id="pprices">1361436136</div> <div id="pprices">136136136136</div>

問題是 JavaScript 代碼僅影響第一個 div。

我怎么解決這個問題?

  1. ID 應該是唯一的。 請改用class
  2. querySelector返回第一個匹配元素。 請改用querySelectorAll
  3. querySelectorAll返回一個 NodeList object 所以使用forEach方法循環遍歷列表。

 const priceDiv = document.querySelectorAll('.pprices'); priceDiv.forEach(e => { e.textContent = (+e.textContent).toLocaleString('en-US'); })
 <div class="pprices">125135135</div> <div class="pprices">1361436136</div> <div class="pprices">136136136136</div>

你需要querySelectorAll和 class 而不是 ids 和forEach來傳遞所有元素

 const priceDivs = document.querySelectorAll('.pprices'); priceDivs.forEach(function (priceDiv) { priceDiv.textContent = (+priceDiv.textContent).toLocaleString('en-US'); });
 <div class="pprices">125135135</div> <div class="pprices">1361436136</div> <div class="pprices">136136136136</div>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM