Простой ответ: вы не можете легко. (Несмотря на то, что вы можете добиться успеха в определении собственного процессора, используя расширенные_радио, хардкорные вещи!).
Более длинный ответ: radios
использует theme_radios . И, как вы можете видеть, он использует одну DIV-оболочку, которая делает невозможным распределение радиостанций по столу.
Что вы могли бы лучше всего сделать, так это создать иерархическую форму с одним radio
на опцию. Избегайте radios
. Сгруппировав их иерархически, name
будет таким же, как и сгруппированы радиостанции .
# from install.php:
foreach ($names as $profile => $name) {
$form['profile'][$name] = array(
'#type' => 'radio',
'#value' => 'default',
'#return_value' => $profile,
'#title' => $name,
'#description' => isset($profiles[$profile]['description']) ? $profiles[$profile]['description'] : '',
'#parents' => array('profile'),
);
}
Затем в функции-теме, в которой вы строите таблицу вокруг формы, вы отображаете каждое радио в соответствующей ячейке таблицы.