jQuery验证onfocusout

时间:2012-12-03 05:48:31

标签: jquery asp.net-mvc jquery-validate

我在MVC应用程序中启用了以下jQuery验证选项。

$.validator.setDefaults({
    onkeyup: false,
    onfocusin: false
});

这意味着验证将在焦点上进行。 我在以下场景中遇到了一个问题。

  1. 用户输入了无效数据并提交了表格(将显示验证错误)
  2. 用户更正了数据并单击了提交按钮,而没有从当前文本框移动焦点。在此步骤中,提交将不起作用,仅清除验证错误。我需要的是在数据正确的情况下提交表格。
  3. 我为此http://jsfiddle.net/8r47E/15/创建了一个jsfiddle Plase分享您的想法。

1 个答案:

答案 0 :(得分:0)

没有onfocusin:之类的东西。您的意思是onfocusout:吗?

您还没有使用your jsFiddle中的任何一个:

    debug: false,
    focusInvalid: false,
    onkeyup: false,
    onclick: false,

这是你想要的吗?

    debug: false,
    focusInvalid: false,
    onkeyup: false,
    onclick: false,
    onfocusout: false,

http://jsfiddle.net/8r47E/24/

Click here to see documentation that describes each .validate() option in great detail

当然,your demo似乎对我来说很好。我在submit上获得了“成功”而没有将光标从输入移开。

我不太确定你要做什么。您描述的所需行为是几乎每个人都希望此验证工作的方式,它恰好是默认情况下的工作方式。

即使您将onfocusout设置为false时出错,您仍然可以在不移动光标的情况下提交表单(更正错误后),因为插件的内置提交处理程序会自动检查形式再次有效。

http://jsfiddle.net/8r47E/25/