在我的代码中,我使用 aCGridView
并通过 ajax 调用多次呈现它,以向用户列出不同类型的数据。在其中一个专栏中,我有一个CButtonColumn
负责运行javascript
函数的专栏。这是我的专栏代码:
array(
'class' => 'CButtonColumn',
'template' => '{archive}',
'buttons' => array(
'archive' => array(
'url' => 'Controller::createUrl("/form/sendToArchive", array("flowId" => $data->id))',
'label' => Yii::t('app', 'Archive'),
'click' => 'function (){sendToArchive(this.href);return false;}',
'imageUrl' => '/themes/negin/images/archive.png',
'visible' => '$data->canBeArchived() ? true : false',
),
),
),
我的问题是一个常见问题,但我仍然没有任何好的解决方案。每次 ajax 调用后,CGridView 被渲染,我的click
事件多次绑定到CButtonColumn
. 我该如何防止CGridView
这种行为?