Javascript 仅在文本框更改完成后,使用document.activeElement和onChange事件验证文本框

Javascript 仅在文本框更改完成后,使用document.activeElement和onChange事件验证文本框,javascript,textbox,validation,Javascript,Textbox,Validation,我已经在我的开发系统上实现了下面代码的一个版本 函数validateTextBoxId{ var textBox=document.getElementByIdtextBoxId; ifdocument.activeElement.id!=textBox.id{ 验证 } } HTML类似于: 其思想是,验证仅在用户完成编辑文本框之后进行,并且与onBlur事件不同,验证仅在文本框的值实际更改时触发 它似乎起作用了,我只是不愿意在没有评论和反馈的情况下使用它。我没有看到任何类似的代码示例。因此

我已经在我的开发系统上实现了下面代码的一个版本

函数validateTextBoxId{ var textBox=document.getElementByIdtextBoxId; ifdocument.activeElement.id!=textBox.id{ 验证 } }

HTML类似于:

其思想是,验证仅在用户完成编辑文本框之后进行,并且与onBlur事件不同,验证仅在文本框的值实际更改时触发

它似乎起作用了,我只是不愿意在没有评论和反馈的情况下使用它。我没有看到任何类似的代码示例。因此,请告诉我您对实施的想法以及您可能有的其他想法


谢谢

这是一个很好的解决方案。请记住,onchange事件通常仅在焦点改变(例如onblur)时触发

如果您想在用户键入时进行验证,可以使用onkeydown/onkeyup/onkeypress,但这相当困难

此外,您还可以使用它,这样就不必为每个字段分配id,并记住将其传递给validate函数:

function validate(input_element) {
    alert(input_element.value)
}
<input type="text" name="name" onchange="validate(this);"/>

好吧,那是我的错。我解决了一个根本不存在的问题。难怪它工作得这么好。我想我在使用MS Access时想到了onChange事件。无论如何,谢谢你的快速回复,我将在我的代码中使用它。再次感谢