javascript - 使用javascript在不同的地方显示相同的id
问题描述
这就是我想要获得的:单击按钮后,它将显示摘要 div 处的数量值和总成本。但是,数量和总和都没有输出。没有收到错误。
HTML 代码:
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="try2.css">
<script src="https://kit.fontawesome.com/c8e4d183c2.js" crossorigin="anonymous"></script>
<script type = "text/javascript" src = "try2.js" ></script>
</head>
<body>
<input type="button" id="button1" class="button" value="A-D" />
<input type="button" id="button2" class="button" value="E-H" />
<input type="button" id="button3" class="button" value="E-H" />
<p>
Button Clicked <span
id="display">0</span> Times
</p>
<script src="try2.js"></script>
<!-- <input type="reset" value="Reset"/> -->
<input type="submit" value="Proceed" onclick="proceedButton()" class="proceed-button"/>
<div class="legend-section">
</div>
<div class="payment-summary">
<h2 class="payment-summary-font">Summary</h2>
<div class="quantity">
<p class="payment-summary-font-font">Quantity</p>
<span id="display2"></span>
</div>
<div class="sum">
<p class="payment-summary-font-font">Total Sum ($)</p>
<span id="total-sum"></span>
</div>
</div>
</body>
</html>
javascript代码:
var buttons = document.getElementsByClassName("button");
var count = 0;
var disp = document.getElementById("display");
var disp2= document.getElementById("display2");
var totalSum = document.getElementById("total-sum");
for (let i = 0, l = buttons.length; i < l; i++) {
buttons[i].addEventListener('click', function() {
buttons[i].classList.toggle('active');
if (this.classList.contains("active")) {
count++;
} else {
count--;
}
disp.innerHTML = count;
})
}
document.getElementById("display2").innerHTML = count;
totalSum = disp2 * 12;
解决方案
html
<!DOCTYPE html>
<html lang="en">
<head>
<link rel="stylesheet" href="try2.css" />
<script
src="https://kit.fontawesome.com/c8e4d183c2.js"
crossorigin="anonymous"
></script>
</head>
<body>
<input type="button" id="button1" class="button" value="A-D" />
<input type="button" id="button2" class="button" value="E-H" />
<input type="button" id="button3" class="button" value="E-H" />
<p>Button Clicked <span id="display">0</span> Times</p>
<!-- <input type="reset" value="Reset"/> -->
<input
type="submit"
value="Proceed"
onclick="proceedButton()"
class="proceed-button"
/>
<div class="legend-section"></div>
<div class="payment-summary">
<h2 class="payment-summary-font">Summary</h2>
<div class="quantity">
<p class="payment-summary-font-font">Quantity</p>
<span id="display2"></span>
</div>
<div class="sum">
<p class="payment-summary-font-font">Total Sum ($)</p>
<span id="total-sum"></span>
</div>
</div>
<!-- Incude script at the end -->
<script type="text/javascript" src="try2.js"></script>
</body>
</html>
try2.js
var count = 0;
var disp = document.getElementById("display");
var disp2 = document.getElementById("display2");
var totalSum = document.getElementById("total-sum");
// get all the buttons with class "button"
var buttons = document.getElementsByClassName("button");
for (let i = 0, l = buttons.length; i < l; i++) {
buttons[i].addEventListener("click", function () { // add onclick evenListener to increment count and store it in "display"
count++;
disp.innerHTML = count;
});
}
// The function you needed when clicking the proceed button
// sets the value of count to "display2"
// Calculates the total and assigns it to "total-Sum"
function proceedButton() {
disp2.innerHTML = count;
totalSum.innerHTML = disp2.innerHTML * 12;
}
推荐阅读
- charts - jasperreports:如何在 xlsx (Excel) 报告中包含图表?
- php - 在多维数组中展平多维数组但保留键?
- jquery - 无法在 jquery 中重新初始化 DataTable 错误
- java - 从服务器收到未知的初始字符集索引“255”,但我不使用 pom.xml
- python - AIOHTTP meme 命令 discord.py
- javascript - 使用 http://localhost/<...> 访问时在 Internet Explorer 11 中加载 javascript 文件时出现问题
- javascript - 如何在使用 php、mysql 上传之前预览图像
- wordpress - 有没有办法在 WordPress 中获取相关帖子 API?
- javascript - 超过 24 小时的 Moment js 格式失败
- excel - 从另一个工作表中搜索和复制