gpt4 book ai didi

javascript - 无法验证用户输入 - onkeyup 事件未触发

转载 作者:行者123 更新时间:2023-11-28 12:51:02 25 4
gpt4 key购买 nike

我没有收到 Javascript 错误,但代码没有执行任何操作...

function registerValidator(target, validator) {
var element = document.getElementById(target);
if (element) {
var validationID = element.id + "_validationResult";
var validationSpan = document.createElement('span');
validationSpan.id = validationID;

element.parentNode.appendChild(validationSpan);

element.onkeyup = function() {
var result = validator(element);

if (result.ok) {
validationSpan.innerHTML = '<img src="/media/valid.gif" width="12" />';
} else {
validationSpan.innerHTML = '<img src="/media/invalid.gif" width="12" />';
if (result.message) {
validationSpan.innerHTML += '<br />' + result.message;
}
}
};
alert(1);
}
}

window.onload = function() {
registerValidator('username', function(element) {
var result = new Object();
alert('validate');
if (element.value.length >= 4) {
result.ok = true;
}
else {
result.ok = false;
result.message = "Too short";
}
return result;
});
alert(2);
}

两个警报(1 和 2)已正确触发,但“验证”警报从未触发。该函数用于以下元素:

<input type="text" name="username" id="username" />

我已在 Google Chrome、Firefox 3 和 Internet Explorer 8 中尝试过此操作。

最佳答案

这里一切正常。请参阅测试页 http://ashita.org/StackOverflow/validator.html

<小时/>

您当前正在使用 element.onkeyup,它可能会被另一个脚本破坏。

尝试使用

if (element.addEventListener)
element.addEventListener("keyup", validator,false);
else if (element.attachEvent)
element.attachEvent("onkeyup", validator);

引用文献:

关于javascript - 无法验证用户输入 - onkeyup 事件未触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1037928/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com