Status active & inactive toggle link using ajax.
In admin view file:
<script language="javascript" type="text/javascript">
function updatestatus(id) {
$.ajax({
url: "<?=$this->createUrl("updatestatus");?>/"+id,
}).done(function (data) {
$.fn.yiiGridView.update("posts-grid");
});
}
</script>
array(
'name'=>'is_enable',
'type' => 'raw',
'value' => '$data->displayStatus($data->is_enable)',
),
In controller:
public function actionUpdatestatus($id){
$model = $this->loadModel($id);
if($model->is_enable=="Y"){
$model->is_enable = "N";
} else {
$model->is_enable = "Y";
}
$model->save();
In model:
public function displayStatus($is_enable) {
if ($is_enable == "Y") {
$status = CHtml::link(' Active', "javascript:;", array("onclick" => "updatestatus('" . $this-> id . "')")
);
return $status;
} else {
$status =CHtml::link(' Inactive', "javascript:;", array("onclick" => "updatestatus('" . $this-> id . "')")
);
return $status;
}
}