我有一些问题。所以基本上我试图在 CGridView 列中创建下拉列表来管理状态。我想将 onchange 加载到数据库。这是网格列:
array(
'name'=>'status',
'type'=>'raw',
'value'=>'CHtml::dropDownlist(\'status\',\'\',array(\'1\'=>\'Complete\',
\'2\'=>\'Paid\',
\'3\'=>\'Not paid\'),array(
\'class\'=>\'status\',
\'options\'=>array($data->status=>array(\'selected\'=>\'selected\')),
\'ajax\'=>array(
\'type\' => \'POST\',
\'url\'=>Yii::app()->createUrl(\'user/orders/status\'),
\'data\'=>array(\'status\'=>\'js:this.value\',\'order\'=>$data->id),
)
));',
),
这是控制器操作代码
public function actionStatus()
{
if (isset($_POST['order'])){
$model=$this->loadModel($_POST['order']);
$model->status=$_POST['status'];
$model->save();
}
}
那么问题是什么。我得到最后一个 $data->id 而不是下拉更改的元素的 id 。所有其他工作正常。
也许这很容易,但我找不到任何解决方案。