Cgridview in admin panel

I try Working with CGridView in Admin Panel but it doesn’t work.

This is my code:

Menu/Controller:


public function actionAjaxupdate()

    {

        $act = $_GET['act'];

        if($act=='doSortOrder')

        {

            $sortOrderAll = $_POST['sortOrder'];

            if(count($sortOrderAll)>0)

            {

                foreach($sortOrderAll as $menuId=>$sortOrder)

                {

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

                    $model->sortOrder = $sortOrder;

                    $model->save();

                }

            }

        }

        else

        {           

            $autoIdAll = $_POST['autoId'];

            if(count($autoIdAll)>0)

            {

                foreach($autoIdAll as $autoId)

                {

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

                    if($act=='doDelete')

                        $model->isDeleted = '1';

                    if($act=='doActive')

                        $model->isActive = '1';

                    if($act=='doInactive')

                        $model->isActive = '0';                     

                    if($model->save())

                        echo 'ok';

                    else

                        throw new Exception("Sorry",500);

     

                }

            }

        }

    }

view: menu/admin:


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

    'enableAjaxValidation'=>true,

)); ?>


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

	'id'=>'menu-grid',

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

	'filter'=>$model,

	'columns'=>array(

        array(

            'id'=>'autoId',

            'class'=>'CCheckBoxColumn',

            'selectableRows' => '50',   

        ),

        'menuId',

        'menuName',

        array(

            'name'=>'sortOrder',

            'type'=>'raw',

            'value'=>'CHtml::textField("sortOrder[$data->menuId]",$data->sortOrder,array("style"=>"width:50px;"))',

            'htmlOptions'=>array("width"=>"50px"),

        ),

        array(

            'name'=>'isActive',

            'header'=>'Active',

            'filter'=>array('1'=>'Yes','0'=>'No'),

            'value'=>'($data->isActive=="1")?("Yes")<img src='http://www.yiiframework.com/forum/public/style_emoticons/default/sad.gif' class='bbc_emoticon' alt=':(' />"No")'

        ),

        array(

            'class'=>'CButtonColumn',

        ),

    ),

)); ?>


<script>

function reloadGrid(data) {

    $.fn.yiiGridView.update('menu-grid');

}

</script>

<?php echo CHtml::ajaxSubmitButton('Filter',array('Menu/ajaxupdate'), array(),array("style"=>"display:none;")); ?>

<?php echo CHtml::ajaxSubmitButton('Activate',array('Menu/ajaxupdate','act'=>'doActive'), array('success'=>'reloadGrid')); ?>

<?php echo CHtml::ajaxSubmitButton('In Activate',array('Menu/ajaxupdate','act'=>'doInactive'), array('success'=>'reloadGrid')); ?>

<?php echo CHtml::ajaxSubmitButton('Delete',array('menu/ajaxupdate','act'=>'doDelete'), array('success'=>'reloadGrid')); ?>

<?php echo CHtml::ajaxSubmitButton('Update sort order',array('Menu/ajaxupdate','act'=>'doSortOrder'), array('success'=>'reloadGrid')); ?>

<?php $this->endWidget(); ?>

Anybody help me?

What is the problem?

It doesn’t work when I click on button ‘Filter’, ‘Activate’, ‘In Activate’, ‘Delete’, ‘Update sort order’.

What error messages do you get? Are they server logs, PHP log or in browser console?

It doesn’t get any error from server or php.

Thanks, It did work.