尝试在JavaScript中使用onchange监听器输入时遇到问题:
var apple = document.getElementById("apple");
apple.addEventListener("change", validate("apple"));
function validate(fruitName){
var qty = parseInt(document.getElementById(fruitName).value);
console.log(qty);
}
Run Code Online (Sandbox Code Playgroud)
每次当用户输入'apple'输入内容时,我都会尝试检查,我会在控制台上打印数量.但是通过这样做,它只在第一次通过打印NaN来刷新浏览器时才运行,即使我更改了'apple'的输入也不行.
有任何想法吗?
提前致谢.
您必须引用该函数,而不是调用它,并且您不需要传入名称以用作获取元素的ID,该元素已在 this
var apple = document.getElementById("apple");
apple.addEventListener("change", validate);
function validate(event){
var qty = parseInt(this.value, 10);
console.log(qty);
}
Run Code Online (Sandbox Code Playgroud)
每当您添加括号时,您都会调用该函数,并将返回的任何内容传递给事件处理程序.
由于函数undefined默认返回,这就是你得到的.
| 归档时间: |
|
| 查看次数: |
364 次 |
| 最近记录: |