如何在cakephp的select选项中添加默认值?

ej83mcc0  于 2023-05-07  发布在  PHP
关注(0)|答案(4)|浏览(234)

我想添加默认选择选项在输入字段例如,如果我正确的这段代码

echo $this->Form->input('field', array(
    'options' => array(1, 2, 3, 4, 5),
    'empty' => '(choose one)'
));

我想把这段代码改成

echo $this->Form->input('field', array(
    'options' => array(1, 2, 3, 4, 5),
    'default' => options[1];  // it's not correct, I just want to add 2 as a default value.
));

这里我想添加选项2作为默认值。

x3naxklr

x3naxklr1#

问题是你写的PHP。你试图引用的东西对你的default来说并不存在,也不是一个正确的PHP变量:

echo $this->Form->input('field', array(
    'options' => array(1, 2, 3, 4, 5),
    'default' => options[1];  // it's not correct, I just want to add 2 as a default value.
));

options[1]不是一个有效的PHP变量,因为您缺少$符号,并且$options数组尚未定义。您刚刚向inputoptions属性传递了一个数组。
你需要先定义$options数组,然后像这样将其传递给$this->Form->input()

$options = array(1, 2, 3, 4, 5);
echo $this->Form->input('field', array(
    'options' => $options,
    'default' => $options[1]; // '2' in the defined array
));
vbopmzt1

vbopmzt12#

阅读书籍

echo $this->Form->input('field', array(
    'options' => array(1, 2, 3, 4, 5),
    'default' => '2'
));
ukqbszuj

ukqbszuj3#

你可以试试这个

$options = array(1, 2, 3, 4, 5);
$attributes = array('value' => 2, 'empty' => false);
echo $this->Form->select('field', $options,$attributes);

这是来自cookbook的链接
如果你从数据库中获取结果,然后填充选择选项,然后只需将$this->request->data['Model']['field'] = 'value';中的值放在控制器中,它将是选择下拉菜单中的默认值

omvjsjqw

omvjsjqw4#

$this->Form->control('name',['options' => $agents,'name'=>'name' ,'empty' => 'choose one','required']);

相关问题