2015-09-29 5 views
2

У меня есть 1 форма, 2 модели. Я пытаюсь использовать проверку ajax для каждого из них.
Он работает отдельно, но вместе ничего работа ..

Форма:
Yii: два ajax подтверждают в одном контроллере

<?php $activeform = $this->beginWidget('CActiveForm', array(
    'id'=>'registration-form', 
    'enableAjaxValidation' => true, 
    'clientOptions'=>array(
     'validateOnSubmit' => true, 
     'validateOnChange' => true, 
     ), 
)); 
?> 

Контроллер:

$form = new ClassModel1_Form1; 
$profile = new ClassModel2_Form1; 

if (isset($_POST['ajax']) && $_POST['ajax'] === 'registration-form' && isset($_POST[CHtml::modelName($form)])) { 
    echo CActiveForm::validate($form); 
    Yii::app()->end(); 
} 

if (isset($_POST['ajax']) && $_POST['ajax'] === 'registration-form' && isset($_POST[CHtml::modelName($profile)])) { 
    echo CActiveForm::validate($profile); 
    Yii::app()->end(); 
} 

ответ

2

Вы прекращают выполнение после первой проверки.

Вы можете получить массив моделей для CActiveForm::validate([$form, $profile])

Смежные вопросы