如何找到输入按下后提交表单的输入字段。

时间:2017-02-27 23:34:19

标签: javascript jquery

我在HTML中有三个输入字段。如果我在第二个字段中输入内容,然后按回车键,则会触发错误功能。我想突出显示在输入时触发错误功能的第二个字段。 如何捕获触发错误功能的第二个输入字段?

不处理按Enter键,但会自动按提交按钮。

1 个答案:

答案 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是另一种,只是不太现代。)

如果这不是答案,那么让我们改进一下问题:)