错误摘要未在CActiveForm中显示 - Yii

时间:2013-09-21 13:09:34

标签: php yii

下面我使用CActiveForm呈现包含相同模型的多个实例的表单。在提交表单时,会显示各个属性的ajax验证错误,但不会显示error summary。可能出现什么问题?非常感谢

<?php 
    $form=$this->beginWidget('CActiveForm', array(
        'id'=>'task-form',
        'enableClientValidation'=>false,
        'enableAjaxValidation' =>true,
        'clientOptions'=>array(
            'validateOnSubmit'=>true,
            'validateOnChange'=>false,
        ),
    )); 
    Yii::app()->session['form'] = $form;
    ?>

    <?php echo $form->errorSummary($models); ?> 

    <ul class="tasks">
        <?php foreach($models as $index=>$model): ?>
            <?php $this->renderPartial('_task', array(
                'model' => $model,
                'index' => $index,
                'form' => $form,
            )); ?>
        <?php endforeach; ?>
    </ul>

    <div class="row buttons">
        <?php echo CHtml::submitButton('Save')?>
    </div>

    <?php $this->endWidget(); ?>
</div>

2 个答案:

答案 0 :(得分:0)

CActiveForm的极端情况。为什么你需要像数组中那样多的表单。您可以在单个表格中使用它们。但问题还在于多种形式的实例。这里

<?php echo $form->errorSummary($models); ?> 

就像这样使用它 -

 foreach($models as $model)
 {
 echo $form->errorSummary($model);
 }

但是你需要改变实现并避免使用那么多重复的表单。

干杯

答案 1 :(得分:0)

尝试更改

'enableClientValidation'=>true,

或尝试使用

 <?php echo CHtml::errorSummary(array($a,$b)); ?>