点击Javascript推迟事件处理程序以进行操作,然后继续

时间:2019-01-29 00:17:38

标签: javascript jquery events event-handling dom-events

我正在为我的网站使用erpnext开源软件,我所做的是创建了一个网络表单,最后将其保存。问题是默认情况下,webform不会检查电子邮件是否有效,但是erpnext具有检查电子邮件是否有效的功能,因此我使用Javascript来防止任何事件的发生。单击“提交”按钮后,我检查了电子邮件并正常运行,但是问题是当我输入正确的电子邮件时,由于已经删除了默认事件,因此无法继续进行默认事件,而且我不知道如何检索默认事件。

这是我的代码和一个小注释,我不能在核心文件中播放,所以我所能做的就是用这个小代码播放。

frappe.ready(function() {
              $('.btn-form-submit').off("click").on("click", function() {
                                   var email = $('[name="email_id"]').val();


                                   if(!validate_email(email)) {
                                       frappe.msgprint("{{ _("Please enter a valid email address so that we can get back to you.") }}");
                                       $('[name="email_id"]').focus();
                                       return false;
                                   }

             });
});

如您所见,if条件包含erpnext提供的默认验证功能,并且可以完美运行。我要做的只是继续执行上面的代码,但是最后,当我将电子邮件编辑为正确的电子邮件并单击按钮时,它将继续默认事件,并且我知道.off删除了所有事件但是我无法使用它进行验证。

那么在运行.off之前,有什么方法可以保存所有事件,然后将它们取回?

希望您能提供帮助。

0 个答案:

没有答案