ActiveForm yii2验证表单错误

时间:2016-04-11 14:39:23

标签: php view yii2 active-form

我有一个观点:

<?= $form->field($registration, 'username',
            ['template' => '<div class="uk-form-row">
                                <label for="register_username">{label}</label>
                                {input}{error}
                                </div>'])
            ->textInput(['class' => 'md-input']) ?>

我希望它在触发错误后向textInput添加新类。 在模型中,有一些输入规则:

['username', 'string', 'min' => 2, 'max' => 255, 'message' => 'Can not be blank'],
['username','required']

例如,如果我键入1个会触发错误的符号Can not be blank。但我也希望在此输入上添加md-input-danger。有没有正确的方法呢?

2 个答案:

答案 0 :(得分:0)

您应该在表单中应用一些选项:

$form = ActiveForm::begin([
    'layout' => 'horizontal',
    'fieldConfig' => [
        'horizontalCssClasses' => [
            'error' => 'md-input-danger'
        ],
    ],
]);

答案 1 :(得分:0)

如果你想使用yii \ web \ ActiveField,请看:

yii-widgets-activefield.html#$errorOptions-detail

代码应该是:

$form = ActiveForm::begin([
    'fieldConfig' => [
        'errorOptions' => ['class' => 'md-input-danger']
    ],
]);

P.S。 Hutsi的代码使用yii \ bootstrap \ ActiveField