enableAjaxValidation 默认为false,设置true后,在鼠标离开表单中的元素会以ajax方式请求服务端。
1、表单中的所有元素都会ajax请求
$form = ActiveForm::begin([
'id' => 'myform',
'enableAjaxValidation' => true,
]);
2、表单中的单个元素ajax请求
$form->field($model,'name',['enableAjaxValidation'=>true])->textInput();
3、控制器接收处理
if (Yii::$app->request->isAjax) {
Yii::$app->response->format = \yii\web\Response::FORMAT_JSON;
$result = \yii\bootstrap\ActiveForm::validate($model);
return $result;
}
网友评论