我在HTML中有三个输入字段。如果我在第二个字段中输入内容,然后按回车键,则会触发错误功能。我想突出显示在输入时触发错误功能的第二个字段。 如何捕获触发错误功能的第二个输入字段?
不处理按Enter键,但会自动按提交按钮。
答案 0 :(得分:0)
你想要达到的目标可能是两件事之一:
的 1。每当字段值更改时进行值检查。
为此,您可以使用onChange事件进行管理:
$("input").on("change",function() {
var field = $(this);
// field.val() is the value
// field.attr("name") is the name of your input element
errorCheck(field); // your error checker
});
的 2。表单提交时的值检查。
要做到这一点,你必须记住最后关注哪个输入。将onFocus事件附加到您的输入:
var lastFocused = 0;
$("input").on("focus",function() { lastFocused = $(this); });
$("form").on("submit",function() {
// now you have the value in lastFocused.val()
// lastFocused itself is a jQuery object of the field
errorCheck(lastFocused); // this is your own error checker of course
});
现在,无论用户如何提交表单,您都可以查看该值(例如,按Enter键)。
注意在提交表单时也会发生第一个方法(onChange);当焦点离开自聚焦后已修改的字段时,就会发生这种情况。因此,当您输入内容并提交时,您将同时获得提交和更改事件。 (先不确定哪一个。)
另请注意如果您有错误,则必须处理停止表单提交的问题 - 否则(在回发情况下)页面将重新加载或更改,所有输入内容将随之消失风。 Ajax提交是处理此事的一个很好的选择。 (iframe是另一种,只是不太现代。)
如果这不是答案,那么让我们改进一下问题:)