drupal form textfield #default_value不工作

时间:2009-11-30 13:42:06

标签: drupal drupal-6 form-api

我正在使用drupal 6上的多页表单自定义模块。 我的'#type'=>我发现#default_value不起作用'文本域'。 但是,当'#type'=>'textarea'时,它会正确显示并指定'#default_value'。

基本上,我写了一个FormFactory,根据收到的post参数返回不同的表单定义($ form)。最初,它返回目录列表的显示,然后用户从无线电按钮中选择,直到特定目录包含xml文件,它将成为编辑表单。编辑表单将有文本字段显示xml文件中的数据(#default_value),但是“textarea”类型在此处工作而不是“textfield”。

在这种情况下如何让我的'#default_value'工作?

以下是非工作字段定义:

$form['pageset']['newsTitle'] = array(
                                      '#type' => 'textfield',
                                      '#title' => 'News Title',
                                      '#default_value' => "{$element->newsTitle}",
                                      '#rows' => 1,
                                      '#required' => TRUE,
                                      );

然后我将其更改为textarea,如下所示,使其工作:

$form['pageset']['newsTitle'] = array(
                                      '#type' => 'textarea',
                                      '#title' => 'News Title',
                                      '#default_value' => "{$element->newsTitle}",
                                      '#rows' => 1,
                                      '#required' => TRUE,
                                      );

2 个答案:

答案 0 :(得分:0)

关于'#default_value'属性的使用,textfield和textarea表单元素之间应该没有区别,并且两者都适用于我所宣传的。因此,如果它在您的情况下不起作用,您应该检查可能导致错误行为的拼写错误或其他差异。

您可以编辑问题并添加表单定义代码吗?

答案 1 :(得分:0)

你有什么Drupal版本?我在6.16,我也有默认的奇怪行为。就我而言,不适用于textareas。


我是非英语人士,我的default_value有非ascii字符。现在使用翻译修复了它。