Can't Get Ajax Form Errors To Display

I know I am missing one little thing but I can’t seem to see it and I am hoping a fresh pair of eyes can help.

I have created a single form that is using 3 models. Everything works with no Ajax but when I use ajax I can’t get the error summary to display. I viewed the source after submitting a form with no fields filled and the data is there but the container div style is set to display none and the data is returned in JSON.

Also no when I tab through the form I get errors for form field but no error summary when I submit and only the form fields I tabbed through are highlighted in red

What am I missing?

source after form submit

<div id="registration-form_es_" class="errorSummary" style="display: none;">

{"Users_username":["Username cannot be blank."],"Users_email":["Email cannot be blank."],

"Users_password":["Password cannot be blank."],"Users_password_confirm":["Confirm Password cannot be blank."],

"Users_email_confirm":["Confirm Email cannot be blank."],"Organizations_name":["Organization Name cannot be blank."],

"Organizations_mission_statement":["Mission Statement cannot be blank."],"Organizations_phone":["Phone cannot be blank."],

"Organizations_street_address":["Street Address cannot be blank."],"Organizations_postal_code":["Postal Code cannot be blank."],

"Organizations_city":["City cannot be blank."],"Organizations_province_id":["Province cannot be blank."],

"Contacts_organization_id":["Organization Id cannot be blank."],"Contacts_first_name":["First Name cannot be blank."],

"Contacts_last_name":["Last Name cannot be blank."],"Contacts_phone":["Phone cannot be blank."],

"Contacts_email":["Email cannot be blank."]}</div>

abbreviated view

<div class="form">

<?php $form=$this->beginWidget('CActiveForm', array(



	'clientOptions'=> array('validateOnSubmit'=>true),

)); ?>

	<p class="note">Fields with <span class="required">*</span> are required.</p>

	<?php echo $form->errorSummary(array($um,$cm,$om)); ?>

   	<div class="row">

		<?php echo $form->labelEx($um,'username'); ?>

		<?php echo $form->textField($um,'username'); ?>

		<?php echo $form->error($um,'username'); ?>



more fields


	<div class="row buttons">


              echo CHtml::ajaxSubmitButton('Submit', array('users/register'),array(

        'type'=>'post', ));



controller code

 public function actionRegister()


    	$um = new Users;

        $om = new Organizations;

        $cm = new Contacts;



            echo CActiveForm::validate(array($um,$om,$cm));



I think you should use a standard submit button and not an ajaxSubmitButton.

just put that JSON CODE in one $variable and call

$mydata = json_decode($variable);

and data will be returned,

or use

It worked. Thanks so much. I thought I had tried it that way but when it didn’t work I ended trying a whole bunch of different settings and got turned upside and sideways. It’s amazing what a fresh pair of eyes and a good night sleep can do for you. I guess my wife is right. I should take a break once and a while.

Thanks for taking the time zaccaria and Igor