我有一个类型为
number
的输入元素,并预填充了零。
现在我想每次值改变时触发一些JS...但是
所以这不起作用,因为它在退格键上被触发:
on(document, "change keydown", ".mynumberfield", function (e) {
...
您可以尝试这样做:
var text = document.getElementById("text");
text.addEventListener("input", keyp);
var prev = text.value;
function keyp(e){
if((parseInt(text.value)+0)!=prev){
performAction()
}
prev = parseInt(text.value);
}
function performAction(){
console.log("Input changed!");
// Add whatever you want here
}
<p>Put your input here</p>
<input type="number" id="text"></input>
代码只是检查实际值是否已更改。如果是这样,它就会执行你想要的 JS 操作。否则什么都不会发生。