如何使用jquery在更改时验证输入字段?

Ale*_*lds 9 validation jquery input onchange blur

我有一个input领域:

<input type="text" name="notifyEmail" id="parametersEmail" value="" size=40 />
Run Code Online (Sandbox Code Playgroud)

我有一大块jquery代码,当我点击tab或以其他方式离开字段时,它会调用验证例程:

$("#parametersEmail").blur(function(event) {
    validateParameterEmail();
});
Run Code Online (Sandbox Code Playgroud)

我想做的是validateParameterEmail()每当输入字段的值或内容发生变化时运行该函数.

所以我接着尝试了.change()处理程序:

$("#parametersEmail").change(function(event) {
    validateParameterEmail();
});
Run Code Online (Sandbox Code Playgroud)

但是当我更改内容时parametersEmail,此处理程序不会调用验证函数.

我应该使用另一个处理程序吗?或者我不能将多个事件处理程序附加到输入字段?

Ish*_*Ish 8

尝试 $("#parametersEmail").keydown(function(event) {})

  • `.keydown()`似乎在输入值发生变化之前实际触发.换句话说,如果你键入`1234`,这将在`123`上验证.同样,如果输入`1234 [delete]`,它将在`1234`上验证.`.keyup()`可能更适合表单验证. (9认同)
  • 或.keypress()或.keyup() (4认同)

Vic*_*tor 6

试试这个:

$("#parametersEmail").bind('blur', function(event) {} );
Run Code Online (Sandbox Code Playgroud)

$("#parametersEmail").bind('keyup', function(event) {} );
Run Code Online (Sandbox Code Playgroud)