これは、CListビューからテンプレートで呼び出しているAjaxボタンのコードです。問題は、コンパイル時にeditid変数をバインドして、対応する行IDがajaxリクエストのパラメーターとして渡されるようにすることです。
しかし、yii の遅延バインディングは、すべての行が処理されるときに常にバインドします。これは、任意の行からのクリックの結果として、最後の行の ID しか取得しません。これに対する回避策はありますか
echo CHtml::ajaxButton("Edit",CHtml::normalizeUrl(array('fieldvals/parseajax','eid'=>$data->id)),
array(
'data'=> "js:{edtid:$data->id}",
'success'=>'function(resp)
{
}',
'complete'=>'function(data){
$("#message").html("Edit Mode");
}',
'type'=>'post',
'update' => '#data'
),
array(
'id'=>'ajaxEditSubmit'.$users['ids'][$key],
'name'=>'ajaxEditSubmit'.$users['ids'][$key]
)); ?>
//CListView 構成
$this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
));