3

我在 Cake 中创建了一个大表单,并通过inputDefaults. 但是我希望更改单个字段的默认值。

在设置表单默认值时,我大致这样写:

'inputDefaults' => array(
    'error' => array(
        'attributes' => array(
            'wrap' => 'span',
            'class' => 'invalidate column-7 offset-3')));

...结果所有类似的字段都会产生相同的错误消息。但是,当我尝试更改单个字段的默认值时,如下所示:

echo $this->Form->input('name', array(
    'error' => array(
        'attributes' => array(
            'wrap' => 'span',
            'class' => 'invalidate column-10'))));

它不起作用。该字段name产生一个错误,其类读取column-7and offset-3,而我的意图是column-10

有人知道解决方案吗?

4

1 回答 1

0

$options['inputDefaults'] 您可以使用 inputDefaults 键为 input() 声明一组默认选项,以自定义您的默认输入创建:

echo $this->Form->create('User', array(
    'inputDefaults' => array(
        'label' => false,
        'div' => false
    )
));

从那时起创建的所有输入都将继承 inputDefaults 中声明的选项。您可以通过在 input() 调用中声明选项来覆盖 defaultOptions:

echo $this->Form->input('password'); // No div, no label
// has a label element
echo $this->Form->input(
    'username',
    array('label' => 'Username')
);
于 2014-01-30T14:07:09.753 回答