【发布时间】:2011-03-26 20:46:37
【问题描述】:
在安装了 date 模块的 drupal 7 中,在构建表单时,我想简单地(通过表单)收集某事发生的时间。
使用form api时,我的字段定义如下
$form['dose']['time'] = array(
'#type' => 'date_popup',
'#title' => t('Start Time'),
'#date_format' => 'h:i A',
);
这在屏幕上显示得很好,带有我想要的时间选择器。
在我的提交函数中处理这个时,我没有得到这个表单字段的值。它是空白的。
如果我仅将其更改为
$form['dose']['time'] = array(
'#type' => 'date_popup',
'#title' => t('End Date'),
'#date_format' => 'Y-m-d',
);
然后我的提交函数可以很好地看到这个表单字段,但是它也显示了一个日期选择器,我不能为这个字段提供它。
如果我为第一个示例设置#required=TRUE,则验证失败,可能是因为没有选择 Y,m,d。如果有办法为此设置一个 BS 值,我会接受它,因为我可以稍后解析它。
在旁注中,我也尝试过以几乎相同的方式输入 date_select 表单,得到完全相同的空白结果。
有什么方法可以在 drupal 中使用原生表单 api 并能够通过选择器实际获取时间?
【问题讨论】:
-
关于 Drupal 的问题也可以访问 drupal.stackexchange.com。