【发布时间】:2012-08-14 15:48:49
【问题描述】:
我有一个CListView 在_view 文件中使用ajaxLink()。
查看(index.php)
<?php
Yii::app()->clientScript->registerScript('ajaxUpdate',
"
//javascript function to update the listview using ajax
function updateItemList(){
$.fn.yiiListView.update('itemList');
return false;
}
", CClientScript::POS_READY);
?>
<?php $this->widget('zii.widgets.CListView', array(
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
'id'=>'itemList',
)); ?>
部分(_view.php)
<?php echo CHtml::ajaxLink('Delete',array('libdbitems/delete','id'=>$data->id),
array('type'=>'POST','success'=>'function(){updateItemList()}'),
array('confirm'=>'Are you sure you want to delete this item?',
'id'=>'delete-'.$data->id)); ?>
控制器基本上就是使用 Gii 生成的默认 actionIndex()。
问题是:当我在页面加载后第一次单击我的Delete 链接时,它的行为与预期一致。之后,单击Delete 什么也不做。 (它会刷新 ListView,但没有进行任何更改。)
我很确定问题在于 Yii 如何将 click() 事件绑定到我在 javascript 中的链接,但我不知道如何解决它。我已尝试按照其他人的建议使用 live=true 选项,但它什么也没做。
有谁知道如何解决此问题,以便我的删除链接可以多次使用而无需重新加载页面?
【问题讨论】: