6

有没有办法向CHtml::button控制器发送发布请求

<?php echo CHtml::button('Button Text', array('submit' => array('controller/action'))); ?>

我正在寻找复制CHtml::link功能和 POST 到控制器

<?php echo CHtml::link('Delete',"#", array("submit"=>array('delete', 'id'=>$data->ID), 'confirm' => 'Are you sure?')); ?>

编辑:

该按钮未提交表单

4

1 回答 1

13

试试这个:

echo CHtml::button('Delete',
    array(
        'submit'=>array('controllername/actionname',array('id'=>$id)),
        'confirm' => 'Are you sure?'
        // or you can use 'params'=>array('id'=>$id)
    )
);

正如您将看到button的,它还具有特殊htmlOptions属性clientChange

更新澄清submit,来自文档链接():

submit:字符串,指定要提交到的 URL。如果当前元素有一个父表单,则该表单将被提交,如果 'submit' 为非空,则其值将替换该表单的 URL。如果没有父表单,则会将“params”中列出的数据(通过 POST 方法)提交到“submit”中的 URL,或者如果“submit”为空,则提交到当前请求的 URL。请注意,如果 'csrf' 设置为 true,则 CSRF 令牌也将包含在参数中。

强调我的

正如您提到的,您想要点击删除操作,生成的默认 giiactionDelete需要id在 url 中,因此我在 url 中传递了 id,即submit选项。

于 2013-01-07T05:22:17.823 回答