yii2 Валидация require с условием when -- на клиентской стороне (JS)
Primary tabs
Для того, чтобы валидация обязательность поля с условием работала на клиентской стороне, необходимо явно прописать JS функцию, например:
public function rules()
{
return [
['currentPassword', 'required',
'when' => function($model) {
return !empty($model->newPassword);
},
'whenClient' => "function (attribute, value) {
var newPass = $('#profileupdateform-newpassword').val();
return !(!newPass || /^\s*$/.test(newPass));
}"
],
];
}
-- в данном примере указывается, что поле "Текущий пароль" (currentPassword) должно быть заполнено только если не пусто поле "Новый пароль" (в конкретном случае на форме имеет id = profileupdateform-newpassword).
Источник: https://www.yiiframework.com/doc/guide/2.0/en/input-validation#conditional-validation
- Log in to post comments
- 3963 reads