将Javascript放在Yii GridView中的URL列中

时间:2011-07-24 00:15:44

标签: php gridview yii

我正在尝试将这些按钮放在GridView中:

$extraButtons = array(
            'class'=>'CButtonColumn', 
                updateButtonLabel => 'Atualizar',
                deleteButtonLabel => 'Excluir',
                viewButtonLabel => 'Visualizar',
                deleteConfirmation => 'Deseja realmente excluir este ítem?', 
                buttons => array(
                    'btnCVs' => array(
                        'label'=> 'See resumes',
                        'url'=> 'javascript:viewResumes($data->id_professional)', //here is the line
                        'imageUrl' => '/gammarh/assets/dad4ddbc/gridview/cvs.gif',
                        'visible' => 'true',
                    )),
                template => '{btnCVs} {view} {update} {delete}', 
                viewButtonOptions => array("target" => "_blank"),           
        );  

我想在每个生成的行中放置一个函数。当我这样做时,我收到错误:

Parse error: syntax error, unexpected ':' in /Applications/MAMP/htdocs/yiiroot/framework/base/CComponent.php(616) 

我已经尝试逃避:字符,使用urlencode ..而且没有。

有人知道如何解决它?

谢谢,

Armando

1 个答案:

答案 0 :(得分:3)

你应该可以这样做:

'url'=> '"javascript:viewResumes(\"".$data->id_professional."\");"', //here is the line

(如果您只是传递了ID,则可以省略转义的引号。)

另一个选项是将唯一ID传递给每个按钮,并在页面加载时附加点击事件。