Добрый день. В форме есть два инпута с правилами валидации и масками заполнения. Есть чекбокс. Задача: при выборе чекбокса тут же отключать у инпутов любые валидации. Как правильно реализовать эту задачу? Спасибо.
Вариант 1:
$rules = [
['attributeToValidate','string','when' => function() {return $this->validationCheckBoxAttribute == false}]
]; https://www.yiiframework.com/doc/api/2.0/yii-valid...
Вариант 2: Сценарии
Вариант 3: Ансетить поля для валидации в beforeValidate()
Вариант 4: .......
Одним словом - вариантов масса. Как по мне - то 1й самый простой. Его же можно через whenClient применять для клиентской стороны.
Mylistryx, ну вот я по 1 варианту пошел и он отрабатывает, но с той оговоркой, что мне надо еще маску убирать, потому что маска у меня скажем на 4 символа, а при выбранном чекбоксе надо тут же позволить вводить туда что угодно, убрав маску. Пытался jsкой по типу
if ($('#driver-foreign_license').prop('checked')) {
$('#driver-license_series, #driver-license_number').inputmask.remove();
}