Fail To Submit Form

i am having a page with grid view and some checkbox fields init.

i added a submit button to it by adding echo CHtml::submitButton(‘Submit-form’);

But, that button is not responding.

why so?

how i should submit this form.

please find that screen shot in attachments…

MY VIEW PAGE:




<?php

/* @var $this ContactlistController */

/* @var $model Contactlist */


$this->breadcrumbs=array(

	'Contactlists'=>array('index'),

	'Manage',

);


$this->menu=array(

	array('label'=>'List Contactlist', 'url'=>array('index')),

	array('label'=>'Create Contactlist', 'url'=>array('create')),

);


Yii::app()->clientScript->registerScript('search', "

$('.search-button').click(function(){

	$('.search-form').toggle();

	return false;

});

$('.search-form form').submit(function(){

	$('#contactlist-grid').yiiGridView('update', {

		data: $(this).serialize()

	});

	return false;

});

");


?>

//added

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

    'id'=>'contactlist',

    'enableClientValidation'=>true,

    'clientOptions'=>array(

        'validateOnSubmit'=>true,

    ),

    'action'=>$this->createUrl('myaction'),

)); ?>


<h1>Manage Contactlists</h1>





<p>

You may optionally enter a comparison operator (<b>&lt;</b>, <b>&lt;=</b>, <b>&gt;</b>, <b>&gt;=</b>, <b>&lt;&gt;</b>

or <b>=</b>) at the beginning of each of your search values to specify how the comparison should be done.

</p>


<?php echo CHtml::link('Advanced Search','#',array('class'=>'search-button')); ?>

<div class="search-form" style="display:none">

<?php $this->renderPartial('_search',array(

	'model'=>$model,

)); ?>

</div><!-- search-form -->




<?php $this->widget('zii.widgets.grid.CGridView', array(

	'id'=>'contactlist-grid',

	'dataProvider'=>$model->search(),

	'filter'=>$model,

'selectableRows'=>2,//If 0-rows cannot be selected. 1-only one row can be selected >=2 multiple rows can be selected.

	'columns'=>array(

//this array for checkboxes

array(

'name'=>'select',

'value'=>'$data->active', // your table id

'class'=>'CCheckBoxColumn',),

		'fname',

		'lname',

		'email',

		'mobile',

		'address',

			),


)		);




echo CHtml::ajaxSubmitButton('Submit',CHtml::normalizeUrl(array('myAction','render'=>true)),array());


//echo CHtml::submitButton('Submit-form');




    $this->endWidget();


?>




MY CONTROLLER PAGE:




<?php




class ContactlistController extends Controller

{

//added

public function actionEmail()

	{

       // $model=new Contactlist;




        /*

        $model1=new Event;

        $model2=new Contactlist;

    //passing

		$this->render('email',array('model1'=>$model1,'model2'=>$model2));

        */


       // $model=new Contactlist;

        //$model1=new Event;




        $this->render('email');

	}




/**

	 * @var string the default layout for the views. Defaults to '//layouts/column2', meaning

	 * using two-column layout. See 'protected/views/layouts/column2.php'.

	 */

	public $layout='//layouts/column2';


	/**

	 * @return array action filters

	 */

	public function filters()

	{

		return array(

			'accessControl', // perform access control for CRUD operations

			'postOnly + delete', // we only allow deletion via POST request

		);

	}


	/**

	 * Specifies the access control rules.

	 * This method is used by the 'accessControl' filter.

	 * @return array access control rules

	 */

	public function accessRules()

	{

		return array(

			array('allow',  // allow all users to perform 'index' and 'view' actions

				'actions'=>array('index','view','myaction'),

				'users'=>array('*'),

			),

			array('allow', // allow authenticated user to perform 'create' and 'update' actions

				'actions'=>array('create','update','email'),

				'users'=>array('@'),

			),

			array('allow', // allow admin user to perform 'admin' and 'delete' actions

				'actions'=>array('admin','delete'),

				'users'=>array('admin'),

			),

			array('deny',  // deny all users

				'users'=>array('*'),

			),

		);

	}

//added to test form submission


    public function actionMyaction()

    {

        echo 'myaction reached';


        var_dump($_POST);

    }

	/**

	 * Displays a particular model.

	 * @param integer $id the ID of the model to be displayed

	 */

	public function actionView($id)

	{

		$this->render('view',array(

			'model'=>$this->loadModel($id),

		));

	}


	/**

	 * Creates a new model.

	 * If creation is successful, the browser will be redirected to the 'view' page.

	 */

	public function actionCreate()

	{

		$model=new Contactlist;


		// Uncomment the following line if AJAX validation is needed

		// $this->performAjaxValidation($model);


		if(isset($_POST['Contactlist']))

		{

			$model->attributes=$_POST['Contactlist'];

			if($model->save())

				$this->redirect(array('view','id'=>$model->email));

		}


		$this->render('create',array(

			'model'=>$model,

		));


	}


	/**

	 * Updates a particular model.

	 * If update is successful, the browser will be redirected to the 'view' page.

	 * @param integer $id the ID of the model to be updated

	 */

	public function actionUpdate($id)

	{

		$model=$this->loadModel($id);


		// Uncomment the following line if AJAX validation is needed

		// $this->performAjaxValidation($model);


		if(isset($_POST['Contactlist']))

		{

			$model->attributes=$_POST['Contactlist'];

			if($model->save())

				$this->redirect(array('view','id'=>$model->email));

		}


		$this->render('update',array(

			'model'=>$model,

		));

	}


	/**

	 * Deletes a particular model.

	 * If deletion is successful, the browser will be redirected to the 'admin' page.

	 * @param integer $id the ID of the model to be deleted

	 */

	public function actionDelete($id)

	{

		$this->loadModel($id)->delete();


		// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser

		if(!isset($_GET['ajax']))

			$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));

	}


	/**

	 * Lists all models.

	 */

	public function actionIndex()

	{

		$dataProvider=new CActiveDataProvider('Contactlist');

		$this->render('index',array(

			'dataProvider'=>$dataProvider,

		));

	}


	/**

	 * Manages all models.

	 */

	public function actionAdmin()

	{

		$model=new Contactlist('search');

		$model->unsetAttributes();  // clear any default values

		if(isset($_GET['Contactlist']))

			$model->attributes=$_GET['Contactlist'];


		$this->render('admin',array(

			'model'=>$model,

		));

	}


	/**

	 * Returns the data model based on the primary key given in the GET variable.

	 * If the data model is not found, an HTTP exception will be raised.

	 * @param integer $id the ID of the model to be loaded

	 * @return Contactlist the loaded model

	 * @throws CHttpException

	 */

	public function loadModel($id)

	{

		$model=Contactlist::model()->findByPk($id);

		if($model===null)

			throw new CHttpException(404,'The requested page does not exist.');

		return $model;

	}


	/**

	 * Performs the AJAX validation.

	 * @param Contactlist $model the model to be validated

	 */

	protected function performAjaxValidation($model)

	{

		if(isset($_POST['ajax']) && $_POST['ajax']==='contactlist-form')

		{

			echo CActiveForm::validate($model);

			Yii::app()->end();

		}

	}

}







Instead of attaching files pasted your code here, select code and click the <> button on editor toolbar

That will make it easier than downloading files

Thanks…