在我们的YII应用程序中,我们希望捕获谷歌对验证失败的分析。我们使用模态规则来验证我们的数据。以下是我们的验证模态代码片段之一
public function rules() {
return [
['email', 'validateEmail'],
];
}
public function validateEmail($attribute_name, $params) {
if (EMAIL EXITS IN DATABASE) {
$this->addError($attribute_name, Yii::t('app', 'Email Already Exist.'));
return false;
}
}
它在我们的前端正确地显示了一个错误消息,但是我们不能在google analytics中跟踪这个消息。我们希望在验证失败时调用一个javascript函数。下面是我们的javascript函数
function captureGAEvent(category, action, label) {
alert(category + " " + action + " " + label);
ga('send', 'event', category, action, label);
}
请你指导。
1条答案
按热度按时间stszievb1#
yii2文档说明你可以设置客户端验证
哪一个有一个clientValidateAttribute方法实现客户端验证,您也可以在其中放置您的分析代码。
您需要在ActiveForm中启用enableClientValidation。
我将根据“延迟验证”段落执行以下操作。
创建验证器类
在模型中使用它