Как предварительно выбрать элемент радио формы с помощью Symfony 2?
Я работаю над формой выбора языка:
$currentLocale = "en_US"; // This is indeed sent to the formType
$langs = array(
'fr_FR' => 'fr',
'en_US' => 'en'
);
$builder->add('language', 'language', array(
'choices' => $langs,
'expanded' => true,
'multiple' => false,
'required' => false,
'label' => false,
));
HTML-код выглядит так (упрощенно):
<div id="languageForm_language">
<input type="radio" value="fr_FR">
<input type="radio" value="en_US">
</div>
как я могу получить второй элемент предварительно выбран, в соответствии с $currentLocale
значение ?
2 ответов
в своем $langs
array вы можете указать пары значений ключей следующим образом:
array(
0 => 'value1',
1 => 'value2'
)
теперь, например, вы хотите предварительно выбрать value2
, вы можете установить
Если форма используется с объектом модели, просто установите язык на самом объекте, прежде чем передавать его в форму:
$object->setLanguage($currentLocale);
$form = $this->createForm('some_form_type', $object);
в противном случае выберите data
опции к ключу языка по умолчанию:
$builder->add('language', 'language', array(
'choices' => $langs,
'data' => $currentLocale,
// ...
));