ActiveForm, enableAjaxValidation и сабмит формы

Есть форма


$form = ActiveForm::begin([

                                    'id' => 'project-form',

                                    'enableAjaxValidation' => true,

                                    'action' => '/app/projects/create',

                                    'fieldConfig' => [

                                        'template' => "\n{input}\n{error}",

                                        'labelOptions' => [

                                            'class' => 'col-lg-1 control-label'

                                        ],

                                    ],

                                ]);

аякс валидация проходит, код валидации


    public function actionCreate()

    {

        $model = new Projects();

        $model->load($_POST);

        $model->user_id = Yii::$app->user->id;

        if (Yii::$app->request->isAjax) {

            Yii::$app->response->format = Response::FORMAT_JSON;

            return  ActiveForm::validate($model);

        } else {

            if ($model->validate() && $model->save()) {

                $this->goBack();

            } else {

                var_dump($model->errors);

            }

        }

    }



а вот сабмит формы к сожалению не происходит. Либо быть может кто-то подскажет как тогда сделать полностью аякс отправку формы с созданием записи.

Часть проблемы решил. Форма находилась в води модального окна, кнопки сабмит в его футере. Форма отправляется, все отлично. Вопрос, как сделать её отправку аяксом?

Наткнулся на тему http://www.yiiframework.com/forum/index.php/topic/58831-activeform-toggle-event-to-yiiactiveform/

Нужно примерно тоже самое, перекрыть один из евентов yiiActiveForm, но каким образом его провалить внутрь виджета? Метод getClientOptions выдает дифф из дефолтных опций, содержимое которых зашито прямо в методе и никак не обращает внимает на свойство options класса. Выход только расширять класс и переписывать метод?




$('#{$form->id}').on('beforeValidate',function(event){

    console.log(event);

    return false;

});

все отлично, всем спасибо за ответы :lol: