使用 CakePHP 的 HTML/Form Helpers 创建带有链接的按钮

jss*_*trn 5 cakephp

我想使用 CakePHP Helpers 将链接转换为按钮。

随着$this->Html->link()我能够使用数组(),包括'action' => 'view' . $user['User']['id'],但我不知道如何使用时,包括该$this->Form->button()相反。

使用$this->Html->link()

$this->Html->link('Click me', array(
    'controller' => 'users',
    'action' => 'view' . $user['User']['id']));
Run Code Online (Sandbox Code Playgroud)

我的解决方案

我的解决方案不允许我添加 'action' => 'view' . $user['User']['id']

使用$this->Form->button()

echo $this->Form->button('Click me', array(
    'type' => 'button',
    'onclick' => 'location.href=\'/rentmyride/users/index/\';',
    ));
Run Code Online (Sandbox Code Playgroud)

使用<input>标签:

<input type="button" class="btn btn-primary" value="Click me" 
    onclick="location.href='http://www.domain.com';">
Run Code Online (Sandbox Code Playgroud)

使用<button>标签:

<button class="btn btn-success" onclick="location.href='http://www.domain.com';">
    Click me
</button>
Run Code Online (Sandbox Code Playgroud)

ari*_*lia 4

HTML5 按钮具有用于此用途的 formaction 属性。当然这仅适用于现代浏览器

$this->Form->button(
    'Click me', 
    array(
        'formaction' => Router::url(
            array('controller' => 'users','action' => 'view' . $user['User']['id'])
         )
    )
);
Run Code Online (Sandbox Code Playgroud)