Откройте исходный код полученной вами страницы с формой, я предполагаю, что первое поле у вас уже есть (которое потенциально копируется), далее найдите код с js валидацией, сгенерированной yii, чтобы валидировать динамические поля после каждого добавления поля нужно вешать на него валидацию.
Пример моего кода, код валидации должен быть заменен на ваш.
form.yiiActiveForm(
'add',
{
"id": 'eventoutcomes-' + index + '-comment',
"name": "[" + index + "]comment",
"container": '.field-eventoutcomes-' + index + '-comment',
"input": '#eventoutcomes-' + index + '-comment',
"validate": function (attribute, value, messages, deferred, $form) {
if ((function (attribute, value) {
if ($('#plannedoutcome-type').length > 0) {
return $('#plannedoutcome-event_type').val() != EVENT_TYPE_STAFF
&& $('#plannedoutcome-type').val() == TYPE_EVENT;
} else {
return $('#outcome-event_type').val() != EVENT_TYPE_STAFF
&& $('#outcome-type').val() == TYPE_EVENT;
}
})(attribute, value)) {
yii.validation.required(value, messages, {"message": "Обязательное поле"});
}
}
}
);
Для валидации на сервере:
мы исходим из того, что у вас есть модель-родитель и много дочерних моделей
<?php $form = ActiveForm::begin(); ?>
<?= $form->field($model, 'value')->input(
'number',
['pattern' => '\d*']
); ?>
...
<div class="event-outcomes-block">
<a class="btn btn-success add-event-outcome"><i class="fa fa-plus"></i> Добавить</a>
<div class='form-inline'>
<?php
if(is_array($aEventOutcomes) && count($aEventOutcomes) > 0) :
foreach ($aEventOutcomes as $index => $oEventOutcome) :
?>
<?= $form->field($oEventOutcome, "[$index]id")->input('hidden')->label(false); ?>
<div class="row">
<div class="col-lg-4 value">
<?= $form->field($oEventOutcome, "[$index]value")
->input('number', ['pattern' => '\d*']); ?>
</div>
<div class="col-lg-7 comment">
<?= $form->field($oEventOutcome, "[$index]comment")
->textInput(['prompt'=>'Комментарий']); ?>
</div>
<div class="col-lg-1 action-button">
<div class="form-group">
<a class="btn btn-xs btn-danger delete-button"><i class="fa fa-minus"></i></a>
</div>
</div>
</div>
<?php endforeach; endif; ?>
</div>
</div>
...
<div class="form-group">
<?= Html::submitButton(
'Подтвердить',
['class' => 'btn btn-info']
) ?>
</div>
<?php ActiveForm::end(); ?>
Где каждый элемент массива $oEventOutcome это объект дочерней модели.