将 enableAjaxValidation 设置为 true 后 Yii2 文件验证错误不起作用
Yii2 File Validation Error not working after set enableAjaxValidation to true
以前,当我在我的 ActiveForm 上将 enableAjaxValidation 设置为 false 时,文件验证工作得很好,但是在我将 enabledAjaxValidation 设置为 true 以检查独特的 slug 之后,它不起作用。
这是我所做的
Form:
<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data'] , 'enableAjaxValidation' => true,'id' => 'article-form']); ?>
Model rule:
[['slug'], 'unique'],
[['featureFile' , 'bannerFile'], 'file', 'skipOnEmpty' => false, 'extensions' => 'png, jpg' , 'on' => 'create'],
控制器:
use yii\web\Response; //Ajax Validation
use yii\widgets\ActiveForm; //Ajax Validation
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post()))
{
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($model);
}
虽然我已经选择了图像文件,但它仍然显示验证错误
请帮忙!!!
您可以禁用指定字段的ajax验证。
尝试
<?= $form->field($model, 'featureFile', ['enableAjaxValidation' => false])->fileInput() ?>
以前,当我在我的 ActiveForm 上将 enableAjaxValidation 设置为 false 时,文件验证工作得很好,但是在我将 enabledAjaxValidation 设置为 true 以检查独特的 slug 之后,它不起作用。 这是我所做的
Form:
<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data'] , 'enableAjaxValidation' => true,'id' => 'article-form']); ?>
Model rule:
[['slug'], 'unique'],
[['featureFile' , 'bannerFile'], 'file', 'skipOnEmpty' => false, 'extensions' => 'png, jpg' , 'on' => 'create'],
控制器:
use yii\web\Response; //Ajax Validation
use yii\widgets\ActiveForm; //Ajax Validation
if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post()))
{
Yii::$app->response->format = Response::FORMAT_JSON;
return ActiveForm::validate($model);
}
虽然我已经选择了图像文件,但它仍然显示验证错误
请帮忙!!!
您可以禁用指定字段的ajax验证。
尝试
<?= $form->field($model, 'featureFile', ['enableAjaxValidation' => false])->fileInput() ?>