5

我有以下表格:

$form = $this->beginWidget('bootstrap.widgets.TbActiveForm', array(
            'id'=>'new-agenda-entry',
            'enableAjaxValidation'=>true,
            'action'=>'')); ?>
        <div class="four columns">
            <div class="right top5 sufix10">
                <?php echo $form->labelEx($model,'eventTime'); ?>
                <?php $this->widget('zii.widgets.jui.CJuiDatePicker', array(
                'name'=>'UserAgenda[eventTime]',
                'model'=>$model,
                'options'=>array(
                    'dateFormat'=>'yy-mm-dd',
                    'minDate'=>'new Date()',
                ) // jquery plugin options
            ));?>
            <?php echo $form->error($model, 'eventTime'); ?>
            </div>
            <div class="right top5 sufix10">
                <?php echo CHtml::dropdownList('eventTime_hour', false, $this->getHourArray()); ?>
                <?php echo CHtml::dropdownList('eventTime_min', false, array('00'=>'00', '30'=>'30')); ?>
            </div>
        <?php echo $form->labelEx($model,'note'); ?>
        <?php echo $form->textField($model, 'note');?>
        <?php echo $form->error($model, 'note'); ?>

该模型已在服务器上成功验证,因为我可以在 Firebug 中看到响应:

{"UserAgenda_eventTime":["Event time cannot be blank."],"UserAgenda_note":["Note cannot be blank."]}

消息看起来不错,html 也是如此,但 yii 生成的隐藏输入仍然隐藏且为空。

4

1 回答 1

1

在操作中可能(创建或更新)你必须// $this->performAjaxValidation($model);像这样取消注释你有一个 ajax 验证,如果问题仍然存在我认为将它发布到 yii 论坛中的 yiibootstrap 讨论我更好,我看到你使用 yiibootstrap,尝试使用默认 yii表单小部件。

于 2012-12-25T19:16:03.760 回答