原型:验证后调用自定义函数

时间:2009-12-04 10:03:08

标签: javascript validation prototypejs

我正在使用原型,需要在成功验证后调用我的函数。

部分代码:

var validator  = new Validation(this.form);

这将验证表单,但我不知道如何在验证正确并且表单被提交后调用我的函数trackForm。

任何帮助?

2 个答案:

答案 0 :(得分:1)

我需要更多细节才能回答,至少会尝试一下。 我假设您正在使用PrototypeJS - 库。这个lib默认情况下不支持验证,所以你可能正在使用另一个库。

如果您正在使用Dexagogo的验证(http://tetlaw.id.au/view/javascript/really-easy-field-validation),则需要使用onFormValidate回调。

我从未使用它,但假设您基本上设置了正常的验证,并添加了额外的属性。像这样:

var validator = new Validator(this.form, {onFormValidate: trackForm});
var trackForm = function (validationPassed, form) {
  if (validationPassed) {
    form.reset();
  }
}

Ofc你不需要创建trackForm,但是按照你提到的那样编写。

希望这有点帮助。

答案 1 :(得分:-1)

我很欣赏原始问题并没有提到这个平台,但是我在谷歌搜索Magento平台后广泛地找到了这个问题。

对于那些通过Magento和Magento的VarienForm使用Prototype的人来说,这是一个简单的方法,可以不使用任何其他验证库。

验证器在初始化时附加到表单,而onFormValidate方法是验证器上的选项。

您可以访问如下:

this.form.validator.options.onFormValidate = function(validationPassed, form) {};

请参阅下面的示例,我已经根据自己的方式进行了测试,发现它的工作原理与预期完全相同:

var contactForm = new VarienForm('contactForm', true);
contactForm.validator.options.onFormValidate = function(validationPassed, form) {
    if(validationPassed){
         alert("Validation Passed");
    }
}