【发布时间】:2013-04-17 13:47:16
【问题描述】:
我遇到了一些问题。所以基本上我试图在 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 。其他一切正常。
也许这很容易,但我找不到任何解决方案。
【问题讨论】:
-
你为什么不使用X-Editable Extension for Yii。它应该几乎可以解决您的问题并取出您的“意大利面条代码”:D
-
我明天试试。但我非常希望有其他方法。谢谢。
标签: yii