2010-07-25 2 views
7

Использование CakePHP, я создал выберите опцию-элемент формы с:Почему первый элемент в меню выбора всегда пуст?

echo $form->select('items', $numeration , array('selected' => 0)); 

Это создает окно выбора, но первый вариант всегда пуст.

Как я могу избавиться от этой пустой опции? Я не успел ничего сделать с showEmpty вариант ...

пожалуйста, помогите .... : - ((

ОБНОВЛЕНО:

CakePHP код

echo $form->select('myOptions', array(1 => 'a', 2 => 'b', 3 => 'c'), array('empty'=>false)); 

создает следующий HTML :

<select id="myOptions" name="data[myOptions]"> 
<option selected="selected" value=""></option> 
<option value="1">a</option> 
<option value="2">b</option> 
<option value="3">c</option> 
</select> 

, что не так, и почему у меня есть пустой el ?! ление

+0

Имеет ли '$ numeration' пустой элемент? Сделайте «debug», чтобы быть уверенным. –

+0

nope, нумерация массивов создается непосредственно перед тем, как добавить первый элемент в нее – user198003

+0

Имеет ли массив $ numeration элемент 0? – Leo

ответ

11

Это лучше использовать:

$this->Form->input('items', array('options'=>$numeration)); 

По умолчанию это без пустого элемента. но, чтобы заставить его полностью использовать

$this->Form->input('items', array('empty'=>false, 'options'=>$numeration)); 
+0

не могли бы вы проверить, я обновил свой вопрос на примере .... – user198003

10

В соответствии с docs третьим аргументом является элемент по умолчанию, который необходимо выбрать. Если вы не хотите пустой опции появляться изменить код:

echo $form->select('items', $numeration , NULL, array('empty' => false)); 
+0

Кулинарная книга CakePHP [выберите документацию] (http://book.cakephp.org/view/1430/select) – webkraller

2

Это работает под 2.3:

$options = array('0'=>'Zero','1'=>'One'); 
echo $this->Form->select('field-name',$options,array('empty'=>false)); 
0

Я знаю, что это старый вопрос, но, если у вас возникли проблемы с CakePHP 1,2 (да, я знаю, она сосет использовать такую ​​старую версию), правильный путь:

$form->select(string $fieldName, array $options, mixed $selected, array $attributes, boolean $showEmpty) 

http://book.cakephp.org/1.2/en/The-Manual/Core-Helpers/Form.html#select

Смежные вопросы