Как установить копию заполнителя в меню выбора даты в CakePHP - PullRequest
1 голос
/ 30 августа 2011

Я использую CakePHP 1.3 для создания меню выбора даты рождения (как показано ниже). Я могу установить начальные значения по умолчанию как пустые или выбранные даты, но в идеале я хотел бы, чтобы в качестве начальных отображаемых значений использовались DD-MM-YYYY:

echo $form->input('dob', 
    array(
    'before' => '', 
    'between' => '', 
    'after' => '', 
    'label' => false, 
    'divider' => false, 
    'monthNames' => false, 
    'selected' => false, 
    'empty' => true, 
    'dateFormat' => 'DMY', 
    'minYear' => date('Y') - 70,
    'maxYear' => date('Y') - 16,
    'error' => array('wrap' => 'div', 'class' => 'error-copy')
    ));

Что я получаю:

Date of birth select menus

Что бы я хотел:

Placeholder DD MM YYYY copy

Спасибо

Ответы [ 4 ]

1 голос
/ 30 августа 2011

Полагаю, что если вы хотите сделать это, вам нужно будет создать собственные поля даты и не использовать FormHelper, поскольку вы можете установить для него только дату по умолчанию, для чего вам нужно добавить элемент в поля.

Вы также можете попробовать средство выбора даты JQuery, это то, что я использую в своем проекте, и, поскольку это текстовое поле, вы можете просто установить все, что захотите, в качестве заполнителя.

0 голосов
/ 20 сентября 2016

http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#options-for-select-checkbox-and-radio-inputs

echo $this->Form->dateTime('Contact.date', 'DMY', '12',
    array(
        'empty' => array(
            'day' => 'DAY', 'month' => 'MONTH', 'year' => 'YEAR',
            'hour' => 'HOUR', 'minute' => 'MINUTE', 'meridian' => false
        )
    )
);
0 голосов
/ 15 марта 2013

Для того, чтобы Googling мог найти ответ на этот вопрос спустя 1+ года после его запроса, теперь мы можем просто сделать следующее, чтобы установить значения по умолчанию (временные) в формах CakePHP, которые легко заменяются при нажатии: 1001 *

<?php echo $this->Form->input('Email', array(
'placeholder'=>'Enter Your Email Here'
)); ?>

Мне также нравится включать 'label' => false, чтобы сделать формы действительно минималистичными.

0 голосов
/ 30 августа 2011

Полагаю, вы можете установить дату по умолчанию только в полях даты.

echo $this->Form->input('close_time', array('type' => 'time', 'selected' => '13:30:00'));

Запись в поваренной книге

...