javascript - 如何在 JavaScript 中为 "number"类型输入添加事件监听器?

标签 javascript html variables event-listener

我希望能够向 HTML 中的“数字”输入添加一个事件监听器,以便当按下向上箭头时,变量可以增加 1,当按下向下箭头时,变量可以增加 1变量可以减少 1。

我目前正在使用这个:

const strength = document.querySelector('#Strength');
var ability_points = 0;

strength.addEventListener('change', () => {
    ability_points = ability_points+1;
})

因为我使用“更改”,所以我无法区分向上和向下箭头...

我认为这可能是一件非常简单的事情,但我只是找不到让它监听的内容。

最佳答案

您最好只使用元素的 .value 属性,而不是跟踪增量和减量。如果您只处理 1 的更改,那么如果用户将完全不同的数字复制并粘贴到字段中,您就会失去同步。试试这个:

let ability_points = 0;

const strength = document.querySelector('#Strength');
strength.addEventListener('change', () => {
  ability_points = strength.value;
  console.log(ability_points);
})
<input type="number" id="Strength" value="0" />

关于javascript - 如何在 JavaScript 中为 "number"类型输入添加事件监听器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75715361/

相关文章:

javascript - AngularJS UI 事件绑定(bind)不起作用

javascript - 迭代 JSON 格式的对象数组并修改和扩展它,最好使用 Underscore.js

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

javascript - Google API 多个标记(地址不是经纬度)显示标题(工具提示)

javascript - 引用 JavaScript 变量

javascript - 向 PHP 发送 Ajax 请求不起作用

javascript - 为什么我们不在javascript的函数参数中使用像 "let"、 "var"和 "const"这样的关键字?

list - 如何将 `n` 表示为一系列数字

javascript - 在提交上单击按钮隐藏第一个选项卡并显示下一个选项卡?

javascript - 返回上一页后图像不隐藏