2016-10-26 6 views
2

Я хочу проверить свою активную форму Yii2 на простой щелчке на кнопке, который не является элементом отправки. Я пробовал $('#formId').yiiActiveForm("validate"), но он не работает.Подтвердить Yii2 Activeform при простой кнопке

Я также пробовал - $('#formId').yiiActiveForm('submitForm') он проверяет форму, но также представляет ее, если все в порядке. Я не хочу представлять эту форму. Я просто хочу проверить его нажатием кнопки, и если все в порядке, я хочу открыть модальное всплывающее окно.

Каковы возможные способы проверки этого ActiveForm на кнопку мыши

ответ

2

Для того, чтобы проверить вашу форму выполнения Ajax проверки только внутри вашего действия следующим образом. Это будет только проверить вашу форму

public function actionValidateForm() { 
     $model = new Form(); 

     if (Yii::$app->request->isAjax && $model->load(Yii::$app->request->post())) { 
      Yii::$app->response->format = Response::FORMAT_JSON; 
      return ActiveForm::validate($model); 
      Yii::$app->end(); 
     } 
    } 
+0

Спасибо Nitin. Почти сделано, можно предложить еще одну вещь. Он не удаляет класс ошибки из поля. даже после ввода правильных данных. Проверка корректна, просто сообщение об ошибке не удаляется –

+0

вам необходимо установить свойства формы, такие как 'enableAjaxValidation, enableClientValidation, validateOnChange, validateOnSubmit' to' true' –

+0

Я пробовал validateOnChange и validateOnBlur, но сообщение об ошибке все еще отображается. –

1

Вы должны установить enableClientValidation = false, в настройках you'r формы.

+0

Спасибо mohan .. это сработало –