我刚刚创建了一个 renderPartial():
renderPartial('/users/_form', array('model'=>new Users), true, true); ?>输入的数据未验证的问题。
我错过了什么 ?
我刚刚创建了一个 renderPartial():
renderPartial('/users/_form', array('model'=>new Users), true, true); ?>输入的数据未验证的问题。
我错过了什么 ?
从您的问题中不清楚您想要验证的确切时间。
如果在客户端,您需要这样的东西:
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'your-form',
'enableAjaxValidation'=>true,
'clientOptions' => array(
'validateOnSubmit'=>true,
),
)); ?>
在您的控制器中的 post 操作中加上这个: $this->performAjaxValidation($model); 连同一个控制器方法,如:
/**
* Performs the AJAX validation.
* @param CModel the model to be validated
*/
protected function performAjaxValidation($model)
{
if(isset($_POST['ajax']) && $_POST['ajax']==='saferides-registered-form')
{
echo CActiveForm::validate($model);
Yii::app()->end();
}
}
如果您只想在帖子上进行验证,则可以在处理帖子的控制器操作中使用类似这样的内容:
if ( $model->validate() && $model-save() )
{
..redirect to your view
}
另请参阅文档