我正在使用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,
);
答案 0 :(得分:0)
关于'#default_value'属性的使用,textfield和textarea表单元素之间应该没有区别,并且两者都适用于我所宣传的。因此,如果它在您的情况下不起作用,您应该检查可能导致错误行为的拼写错误或其他差异。
您可以编辑问题并添加表单定义代码吗?
答案 1 :(得分:0)
你有什么Drupal版本?我在6.16,我也有默认的奇怪行为。就我而言,不适用于textareas。
我是非英语人士,我的default_value有非ascii字符。现在使用翻译修复了它。