我使用FAPI为我的网站创建了自定义表单。我根据设计师提供的模板将每个控件放在特定位置。例如 -
<div id="myform">
<span>Enter Your Name : </span> <?php print drupal_render($form['name']); ?>
<span>Gender : </span><?php print drupal_render($form['gender_radio']); ?>
....
</div>
<?php print drupal_render($form['submit']); ?>
这是我的问题 - 如何将表单标记内的所有元素括起来?在drupal中硬编码模板文件中的表单标签是正确的吗?或者在hook_form中创建更好?但这样做需要我手动添加结束表单标签。任何建议都将受到高度赞赏 Drupal - 6.x
答案 0 :(得分:1)
听起来好像你读过building individual fields,但跳过了basic concepts个FAPI。简而言之,如果您使用drupal_get_form()调用表单,则会自动获得表单容器(以及使用FAPI的许多好处,例如令牌,验证等)。要处理表单元素周围的标记,您可以使用#prefix,#suffix和markup元素。
你可以像往常一样从外面组装整个表格,但很少有这样的情况真的值得。如果你真的想这样做,你基本上想要复制drupal_get_form()所做的事情,以便以一种适用于FAPI的方式添加表单包装器。