2

我将 liferay 与 piwik 一起使用,并希望将客户端验证错误事件捕获到 piwik 中的自定义变量中。例如,默认用户注册页面配置了许多字段和合金 ui 验证器。我想捕获注册用户在 piwik 中遇到的所有验证错误,以进行分析并可能改善用户体验。

我更愿意集中执行此操作,以便为 piwik 捕获所有表单验证。无法真正弄清楚合金 ui 验证器框架是如何组织的。那里似乎发生了太多的魔法。

我只是在一个空的注册表单上点击提交按钮,发现该类aui-form-validator-error-container被添加到模糊并提交到标记错误字段。我没能找出使所有这些神奇发生的代码。

有人会给我一些关于如何去做的指示吗?

4

2 回答 2

1

这是你应该得到你想要的东西:

  1. 监听form:registered事件以获取实例化的表单。
  2. 收听每个表单submitError上的事件。formValidator
  3. 使用event.validator.errors来检查哪些fields有错误。

像这样的东西应该工作:

Liferay.on('form:registered', function(event) {
    event.form.formValidator.on('submitError', function(event) {
        console.log(event.validator.errors);
    });
});

此外,您errorField还可以收听单个字段通知。validFieldformValidator

于 2014-01-11T16:48:25.787 回答
1

我不确定它是否有帮助,但你可以参考你的

{liferay_tomcat_home}/webapps/root/html/js/aui/aui-form-validator/aui-form-validator.js

它包含渲染期间使用的实际 javascript。

于 2014-01-09T06:27:42.773 回答