관리자에서 양식을 만들었습니다.
$form['things'] = array(
'#prefix' => '<div id="things">',
'#suffix' => '</div>',
'#tree' => TRUE,
'#theme' => 'table',
'#header' => array(t('Field Label'), t('Field Name'), t('Location'), t('Stuff')),
'#rows' => array(),
);
그런 다음 각 행을 다음과 같이 추가하십시오.
foreach ($type_fields as $field_name => $attrs) {
$stuff = array(
'#type' => 'textfield',
'#default_value' => $attrs['stuff'],
);
$form['things']['#rows'][] = array(
array('data' => 'label'),
array('data' => $field_name),
array('data' => $field_name),
array('data' => $stuff),
);
}
형태가 좋아 보인다! 그러나 첫 번째 문제는 할당 된 값 #default_value이 양식에 표시되지 않는 것입니다. #value올바른 값으로 변경하면 DOES가 나타납니다. 어떻게해야하는지 궁금합니다. 드루팔 문서는 말한다 #value정확히 내가 함수에 기대하는 방법을 작동하지만 형태로 사용할 수 없습니다.
주요 문제는 텍스트 필드 중 하나에 테스트 데이터를 채우고 제출할 때입니다. _submit함수에 제출 된 값이 표시되지 않습니다 .
텍스트 필드에 입력 한 값 $form도 $form_state포함 하지도 않습니다 .
렌더링 때문인지 궁금합니다 #theme => "table". 이 문제가 발생한 사람이 있습니까? 양식에 _submit함수 를 게시 할 때 입력 한 값을 볼 수 있도록 변경 사항에 대한 아이디어가 있습니까?