Я использую Codeigniter
— Я отображаю радио кнопки так:
<fieldset>
<legend>Part Time / Full Time:</legend><br>
<input type="radio" name="time" id="radfull" value="fulltime"> Full Time<br/>
<input type="radio" name="time" id="radpart" value="parttime"> Part Time
</fieldset>
Который работает отлично, они отображают.
Вот код в модели.
'time'=>$this->input->post('time'),
который также отлично работает, он сохраняет выбор database
, Но как получить переключатель для заполнения, когда страница загружается с выбором из базы данных?
Вы можете использовать помощник по формам, который имеет функцию set_radio, самую последнюю функцию на этой странице;
https://ellislab.com/codeigniter/user-guide/helpers/form_helper.html
<input type="radio" name="time" value="fulltime" <?php echo set_radio('time', 'fulltime'); ?> />
<input type="radio" name="time" value="parttime" <?php echo set_radio('time', 'parttime'); ?> />
Надеюсь, это поможет.
Как сказал @Craig, используя set_radio
это то, что вам нужно.
PHP
<input type="radio" name="myradio" value="2" <?php echo set_radio('myradio', '2'); ?> />
Заметка
Значение этого переключателя равно «2». Каким бы ни было значение, оно должно быть вторым параметром в set_radio.
Ваш код будет выглядеть примерно так:
HTML
<fieldset>
<legend>Part Time / Full Time:</legend><br>
<input type="radio" name="time" id="radfull" value="fulltime" <?php echo set_radio('time', 'fulltime'); ?>> Full Time<br/>
<input type="radio" name="time" id="radpart" value="parttime" <?php echo set_radio('time', 'parttime'); ?>> Part Time
</fieldset>
Если вы хотите, чтобы какой-либо параметр был установлен по умолчанию (при загрузке страницы), именно здесь вы бы добавили третий параметр TRUE
на соответствующее радио.
ТАКЖЕ ПРИМЕЧАНИЕ
В вашем контроллере вам нужно будет загрузить form_validation
библиотека для всего этого, чтобы работать.
PHP
$this->load->library('form_validation');
Надеюсь это поможет!
РЕДАКТИРОВАТЬ
Мои извинения, я неправильно понял вопрос. То, что я имел выше, это … до того, как форма будет официально / успешно отправлена. В вашем случае форма уже была (успешно) отправлена, и вы хотите … отредактировать форму (из-за отсутствия более подходящих слов) — так что вам нужен способ заполнения входных данных тем, что выбрал пользователь.
То, что я сделал в прошлом — на мой взгляд — это просто троичная операция прямо на элементе.
Например, допустим, я возвращаю пользователя, и у него есть свойство time.
HTML
<fieldset>
<legend>Part Time / Full Time:</legend><br>
<input type="radio" name="time" value="fulltime" <? echo($user['time'] === 'fulltime') ? selected="selected" : ''; ?> />
<input type="radio" name="time" value="parttime" <? echo($user['time'] === 'parttime') ? selected="selected" : ''; ?> />
</fieldset>
Может быть, это ближе к тому, что вы ищете?