如果您希望函数在用户完成输入后获取值,则使用onchange
而不是 on key up
注意:
onkeyup
正在正常工作。如果您释放密钥,它会被调用一次。如果您按住退格键然后释放,那么它只会被调用一次。
onkeypress
没有得到值,因为事件在值被存储之前被踢了。
另一种选择是忽略退格
function validate(event) {
var keynum;
if (window.event) {
keynum = window.event.keyCode;
} else if (event.which) {
keynum = event.which;
}
if (keynum == 8) { // backspace
return;
}
alert(document.getElementById('newpass').value);
}
或者您可以检查上一个键,如果相同则忽略它
var previousKey;
function validate(event) {
var keynum;
if (window.event) {
keynum = window.event.keyCode;
} else if (event.which) {
keynum = event.which;
}
if (keynum == previousKey) { // backspace
return;
}
previousKey = keynum;
alert(document.getElementById('newpass').value);
}
或者如果它的退格再次忽略