javascript - 如何使这些按钮正常工作
问题描述
我希望我的 HTML 按钮每次单击时都会添加一个,但由于某种我找不到的原因,是和否按钮都会添加到否框......为什么?
<h3>Did this Help?</h3>
<br>
<form>
<input type="text" id="Yes" value="0"/>
<input type="button" onclick="incrementValue()" value="Yes" />
</form>
<br>
<br>
<form>
<input type="text" id="No" value="0"/>
<input type="button" onclick="incrementValue()" value="No" />
</form>
<script>
function incrementValue(yes)
{
var value = parseInt(document.getElementById('Yes').value, 10);
value = isNaN(value) ? 0 : value;
value++;
document.getElementById('Yes').value = value;
}
function incrementValue(No)
{
var value = parseInt(document.getElementById('No').value, 10);
value = isNaN(value) ? 0 : value;
value++;
document.getElementById('No').value = value;
}
解决方案
是和否按钮都将添加到否框.... 为什么?
这是因为函数名称相同,您的第二个函数覆盖了第一个函数。
您不需要两次编写相同的函数。只需通过以下方式
传递id
给函数:button
function incrementValue(id){
var value = parseInt(document.getElementById(id).value);
value = isNaN(value) ? 0 : value;
value++;
document.getElementById(id).value = value;
}
<h3>Did this Help?</h3>
<br>
<form>
<input type="text" id="Yes" value="0"/>
<input type="button" onclick="incrementValue('Yes')" value="Yes" />
</form>
<br>
<br>
<form>
<input type="text" id="No" value="0"/>
<input type="button" onclick="incrementValue('No')" value="No" />
</form>
推荐阅读
- machine-learning - 使用 LSTM 生成助记符 如何确保我的模型使用损失函数生成有意义的句子?
- java - 使用 lambda 或 Stream API 合并流以生成交替序列
- powershell - Powershell 上的 Get-ChildItem
- pytorch - 组装需要渐变的 PyTorch `Tensor` 的有效方法
- c++ - 在 Windows 10 Visual Studio 2017 上为 FTPS 设置 Curl
- maven - 从 Maven 存储库中获取最新版本
- javascript - 如何检查表的父类
- gdb - GDB“服务器”命令
- plone - 自定义用户偏好存储
- opendaylight - 使用 Yangtools 无法从 yang 文件生成 Pojos