テーブルベースを含む別のフォームとフォームをマージしています。テーブルにはチェックボックス付きのリストが含まれており、フォーム フィールドに入力した後、チェックボックスが選択されて送信されます。
このコードを書くと、同じ ID を持つ 2 つのフォームが生成されます。2 つの関数を 1 つのフォームにマージするにはどうすればよいですか。
function add_newHardware() {
$output = drupal_get_form('add_new_form');
return $output;
}
function add_new_form(&$form_state) {
$form['#attributes']['id'] = 'myform';
$form['device'] = array(
'#type' => 'fieldset',
'#collapsible' => FALSE,
'#collapsed' => FALSE,
);
$form['device']['type'] = array(
'#type' => 'select',
'#options' => listType(),
);
$form['device']['title'] = array(
'#type' => 'item',
'#value' => '<h4>2. Enter Information</h4>',
);
$form['table'] = array(
'#type' => 'item',
'#value' => drupal_get_form('selectList'),
);
}
function selectList() {
$form['#attributes']['id'] = 'myform';
......
$output .= theme('table', $header, $rows);
$output .= drupal_render($form);
return $output;
}