[英]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。
我怎么解決這個問題?
class
。querySelector
返回第一個匹配元素。 請改用querySelectorAll
。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.