CakePHP 1.3 - 添加额外的属性以选择菜单选项



如何向我的选择菜单选项标签添加其他属性? 喜欢这个:

<select class="test" name="data[Test][test]">
    <option value="1" data-price="100">My Option</option>
</select>

如何添加data-price="100"

我尝试了这样的事情,但没有用:

<?php
    echo $this->Form->select('test', $options, null, array(
        'class' => 'test',
        'options' => array(
            'data-price' => 100
        )
    ));
?>

看看这个:http://www.dereuromark.de/2012/03/01/some-new-crazy-cakephp-tricks/

"为某些选择选项设置其他属性"

you can try this
    echo $this->Form->input('test', array(
                        'options' => array(
                                            1=>array(
                                            'data-price' => 100, 
                                            'value' => '1', 
                                            'name' => 'My Option'
                                        )),'class' => 'test')
                                    );

你可以这样做:

$options = array(
    ...
    array('name' => 'United states', 'value' => 'USA', 'title' => 'the title that you want', 'class' => 'something'),
    array('name' => 'USA', 'value' => 'USA', 'title' => 'the other title that you want', 'class' => 'otherthing'),
 );
 echo $this->Form->input('test', array('type'=>'select', 'options'=>$options));

您必须手动构建选定的 HTML

你也可以参考 如何在蛋糕 PHP 中给选择标签一个属性?

In cakephp 4

查找文档

控制器

$countries = $this->Countries->find('all')->where([
            'active' => 1
        ]);
$options = $examples->map(function ($value, $key) {
    return [
        'value' => $value->id,
        'text' => $value->name,
        'data-flag' => $value->iso_code
    ];
});

在视图/模板中

<?= $this->Form->control('country_residence_id', [
                'label' => false,
                'options' => $countries,
                'class' => 'form-control select2-flag-search',
                'data-placeholde' => __('Select Country')
            ]) ?>

最新更新