在 jQuery 验证插件中自定义事件委托

2023-12-26

我目前正在设置 jQuery 验证插件以在我们的项目中使用。

默认情况下,会自动设置一些事件来进行处理。 IE。所有输入火验证上的焦点输入/输出、按键事件。我希望它仅在单击提交按钮时触发。

此功能似乎内置于插件中,这使得很难做到这一点(不修改插件代码,不是我想要做的)。

我在插件代码原型方法中找到了eventDelegate函数调用:

        $(this.currentForm)
            .validateDelegate(":text, :password, :file, select, textarea", "focusin focusout keyup", delegate)
            .validateDelegate(":radio, :checkbox, select, option", "click", delegate);

当我从插件中删除这些行时,我得到了结果,但是我宁愿在插件之外做一些事情来实现这一点。

有人可以帮我吗?如果您需要更多详细信息,请告诉我。我用谷歌搜索但收效甚微。

Thanks

EDIT: 我基本上试图仅在提交事件被触发时验证表单。默认情况下,每次焦点在输入控件中丢失时,插件都会进行验证。


找到了答案。它作为验证方法中选项的一部分(隐藏?)。

请参阅本页上的 onfocusout 等选项:http://docs.jquery.com/Plugins/Validation/validate#options http://docs.jquery.com/Plugins/Validation/validate#options

我可以将其设置为 false。

这是我设置验证器的代码(希望其他人会发现这很有用):

$(document).ready(function() {
    $("form").each(function() {
        $(this).validate({
            validateDelegate: function() { },
            onsubmit: true,
            onkeydown: false,
            onkeyup: false,
            onfocusin: false,
            onfocusout: false,

            errorContainer: "#PanelError",
            errorLabelContainer: "#PanelError ul",
            wrapper: "li",
            ignoreTitle: true,
            errorClass: "Error",

            highlight: function(element, errorClass, validClass) {
                $(element).addClass(errorClass).removeClass(validClass);
                $(element.form).find("#" + element.id)
                        .addClass(errorClass);
            },
            unhighlight: function(element, errorClass, validClass) {
                $(element).removeClass(errorClass).addClass(validClass);
                $(element.form).find("#" + element.id)
                        .removeClass(errorClass);
            }
        });
    });
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 jQuery 验证插件中自定义事件委托 的相关文章

随机推荐

  • Selenium ChromeDriver 切换选项卡

    当我单击测试中的链接时 它会打开一个新选项卡 我希望 ChromeDriver 然后专注于该选项卡 我尝试了以下代码来让 ChromeDriver 使用 ctrl tab 快捷方式更改 tabas Actions builder new A
  • 函数“fn:encode-for-uri”导致 XSLT 出错

    我需要对 XSLT 中的字符串进行 URL 编码 但函数 fn encode for uri 破坏了脚本 我在网上查了一下 显然它是命名空间的一部分 http www w3 org 2005 xpath functions 因此 我将以下行
  • 与另一个启动文件链接

    我正在尝试使用以下命令将程序与我自己的启动文件链接STARTUPLD 脚本中的指令 ENTRY start STARTUP my crt1 o GCC驱动程序用于链接程序 不关心像libgcc等库路径 gcc T my script ld
  • 如何仅使某些结构字段可变?

    我有一个结构 pub struct Test pub x i32 pub y i32 我想要一个改变这个的函数 简单 pub fn mutateit mut self self x 1 这使得整个结构在函数调用期间是可变的mutateit
  • java中工厂方法模式如何使用泛型?

    我的代码如下所示 public interface BaseDAO marker interface public interface CustomerDAO extends BaseDAO public void createCustom
  • 如何让 SoapClient 尊重会话?

    我正在使用电子商务购物车的 SOAP API 但我似乎无法让会话在不同页面中持续存在 作为示例 我下面有一些测试代码 带有一堆调试消息 它将一个项目添加到购物车 然后查看购物车 当我在浏览器中运行它时 它工作得很好 但是如果我刷新页面 我预
  • Flutter Google Chart Gauge - 将标签放在中心内

    我正在看图表颤振 https pub dartlang org packages charts flutter包裹 我需要实现一个仪表图表 其中有一个分段及其标签值位于仪表的中心 请参阅下面的模型文件 其中所需类型的三个图表放置在一行中 使
  • 仅使用变量进行单元测试

    我正在使用 Objective c 为 iPhone 应用程序编写单元测试 例如 我只想在编译测试用例时使用一些变量 ifdef UNIT TESTING synthesize requestFinished networkAvailabl
  • DTO 和实体是否都应该具有输入验证

    我有一个 WCF 层 我的域模型位于该 WCF 层后面 我使用 Nhibernate 作为 ORM 工具 我的所有业务逻辑 数据访问等都将位于此 WCF 层后面 我正在向我的客户公开 DTO 我有以下问题 1 我应该创建DTO吗 直接向 W
  • 针对开发的伪代码编辑器的建议[关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Python Minidom:更改节点的值

    我正在使用 Python 的 minidom 库来尝试操作一些 XML 文件 这是一个示例文件
  • 当套接字错误发生时,QWebSocket 底层的 QTcpSocket(或 QSslSocket)是否会被自身破坏?

    When a QTcpSocket or QSslSocket 升级为QWebSocket 前者必须存储以供将来使用 因为它需要 无论何处都移动到同一个线程QWebSocket正在moveToThread deleteLater 每当QWe
  • Windows Azure 网站覆盖了我的 node.js 应用程序中的 404 和 500 错误页面

    我正在使用 Windows Azure 网站来托管 node js 应用程序 到目前为止 除了我的自定义错误之外 一切都很好 在我的节点应用程序中 我有一个错误处理程序 可以在我的本地计算机上很好地呈现自定义 404 和自定义 500 错误
  • 保留 python os.popen() 的彩色输出

    我正在使用 Python 使用 msbuild exe 从给定目录构建多个 VS 解决方案 我只想要特定的输出 但为了节省工作 解释结果的最佳方法是使用原始 ANSI 编码 Example import os output os popen
  • 了解 Cassandra 背后的哲学

    我正在尝试熟悉 Apache Cassandra 以完成特定的 PoC 工作 在浏览了网上的各种文章 尝试了各种可用的库 客户端之后 我的脑海中突然出现了一个特定的问题 我们想到 Cassandra 的最初原因是因为我们想要一个 真正的 分
  • 如何更改剃刀中剑道网格的可分页消息?

    我在 javascript 中找到了 但我无法做到这一点 谁能说一下剃须刀中的 显示 如何 pageable messages display 0 1 of 2 items 0 is the index of the first recor
  • 将新项目添加到 Android 上的列表视图顶部?

    安卓有转录模式 http developer android com reference android widget AbsListView html setTranscriptMode 28int 29当新数据添加到适配器时 允许自动将
  • 使用命令名称/选项直接调用 distutils 或 setuptools 的 setup() 函数,而不解析命令行?

    我想以一种稍微非常规的方式调用Python的distutils或setuptools的setup 函数 但我不确定distutils是否适合这种用法 举个例子 假设我当前有一个 setup py 文件 它看起来像这样 从 distutils
  • 访问共享首选项时 Android 中的 ConcurrentModificationException

    当我开发一个android应用程序时 我遇到了我没有任何线索的异常 我用谷歌搜索了相关主题 但没有一个有帮助 Fatal Exception java util ConcurrentModificationException java ut
  • 在 jQuery 验证插件中自定义事件委托

    我目前正在设置 jQuery 验证插件以在我们的项目中使用 默认情况下 会自动设置一些事件来进行处理 IE 所有输入火验证上的焦点输入 输出 按键事件 我希望它仅在单击提交按钮时触发 此功能似乎内置于插件中 这使得很难做到这一点 不修改插件