カスタムモジュールを作成しています。 HTMLを追加したいフォームがありますが、これを行うための最良の方法がわかりません。
この例では、テキストボックス、ドロップダウンリスト、およびテキスト領域を持つページがあります。ドロップダウンリストとテキスト領域の間にdivを追加します。しかし、未加工のHTMLをWebフォームに追加する方法がわかりません。
ここに私が持っているものがあります:
function myModule_add_form($form_state){
try{
$form = array();
$form['myModule_title'] = array(
'#title' => 'Title',
'#type' => 'textfield',
'#size' => '30',
'#weight'=>1,
);
$form['myModule_type_list']=array(
'#type'=>'select',
'#title' => 'Type List',
'#options' => $someArray,
'#multiple' => false,
'#attributes'=>array('size'=>1),
'#weight'=>2,
);
$form['myModule_description'] = array(
'#title' => 'Description',
'#type' => 'textarea',
'#size' => '255',
'#weight'=>3,
);
$form['submit'] = array(
'#type' => 'submit',
'#value' => 'Submit',
'#weight'=>4,
);
return $form;
} catch(Exception $e){
$errrmsg = "Error with creating form: " .$e->getMessage();
throw New Exception($errrmsg);
}
}
ありがとうジェイソン
フォームAPI に従って、ここに#type => markup
が必要です。
$html = '<strong>My HTML</strong>';
$form['mymarkup'] = array(
'#type' => 'markup'
'#value' => $html,
);
これはデフォルトのタイプなので、#type = 'markup'としてフォーム要素を宣言する必要はありません。
$html = '<strong>My HTML</strong>';
$form['mymarkup'] = array(
'#markup' => $html,
);
参照: https://api.drupal.org/api/drupal/developer%21topics%21forms_api_reference.html/7.x
代わりにこれを試してください:
$html = '<strong>My HTML</strong>';
$form['mymarkup'] = array(
'#type' => 'markup',
'#markup' => $html,
);
参照: https://api.drupal.org/api/drupal/developer%21topics%21forms_api_reference.html/7.x