Codeigniter – Помощник формы set_select ()

Как я могу использовать set_select () (часть помощника формы) в моем раскрывающемся массиве в codeigniter:

Он используется для запоминания той опции, которую пользователь выбрал.

$guide_options = array('investments' => 'Investments', 'wills' => 'Wills', 'tax-planning' => 'Tax planning', 'life-insurance' => 'Life insurance', 'currency-exchange' => 'Currency exchange', 'retirement-planning' => 'Retirement planning', 'international-healthcare' => 'International healthcare', 'savings-plans' => 'Savings plans', 'education-planning' => 'Education planning', 'sipps' => 'SIPPS', 'qrops' => 'QROPS', 'qnups' => 'QNUPS', 'mortgages' => 'Mortgages', 'other' => 'Other service' ); echo form_dropdown('guide', $guide_options, 'investments'); 

Справочник помощника формы здесь: http://codeigniter.com/user_guide/helpers/form_helper.html

Solutions Collecting From Web of "Codeigniter – Помощник формы set_select ()"

set_select вы можете использовать, если вы создаете код html не с помощью помощника.

Хотя вы можете сделать что-то вроде этого

 $selected = ($this->input->post('guide')) ? $this->input->post('guide') : 'investments'; echo form_dropdown('guide', $guide_options, $selected); 

Попробуй это:

 echo form_dropdown('guide', $guide_options,set_value('guide', 'investments')); 

http://codeigniter.com/forums/viewthread/97665/

Вам не нужно использовать set_select (), поскольку вы уже определяете выбранный элемент в from_dropdown ()

 form_dropdown('guide', $guide_options, 'investments'); 

Для лучшего понимания см. Ниже код и вывод

 $options = array( 'small' => 'Small Shirt', 'med' => 'Medium Shirt', 'large' => 'Large Shirt', 'xlarge' => 'Extra Large Shirt', ); $shirts_on_sale = array('small', 'large'); echo form_dropdown('shirts', $options, 'large'); // Would produce: <select name="shirts"> <option value="small">Small Shirt</option> <option value="med">Medium Shirt</option> <option value="large" selected="selected">Large Shirt</option> <option value="xlarge">Extra Large Shirt</option> </select> 

Чтобы использовать set_select, вам нужно иметь правило проверки для рассматриваемого поля. См. Мой ответ на аналогичный вопрос: CodeIgniter select_value в form_dropdown

Вот рабочий пример set_select ()

 <?php echo set_select('my_select', $data['id'])?> 

Полный код:

 <select class="form-control" required name="my_select"> <option value="">- Select -</option> <?php foreach ($datas as $data): ?> <option value="<?php echo $data['id']?>" <?php echo set_select('my_select', $data['id'])?>><?php echo $data['name']?></option> <?php endforeach; ?> </select> 

Или вы можете использовать чистый подход PHP:

 // Use this inside in a <option> generated by a foreach, like the example above. <?php echo $id_city == $city['id']?' selected ':''?>