Zend Form:如何设置文本输入或textarea元素的长度?

And*_*rew 23 zend-form

默认情况下,Zend Form Text元素没有指定宽度.Textarea元素的默认值为rows="24"cols="80".但是当我设定不同的价值时......

$body = new Zend_Form_Element_Textarea('body');
$body->setLabel('Body:')
    ->setRequired(true)
    ->setAttrib('COLS', '40')
    ->setAttrib('ROWS', '4');
$this->addElement($body);
Run Code Online (Sandbox Code Playgroud)

...只添加属性,而不是更改:

<textarea name="body" id="body" COLS="40" ROWS="4" rows="24" cols="80">
Run Code Online (Sandbox Code Playgroud)

指定textarea元素的宽度和高度以及文本元素的列宽的正确方法是什么?

解:

显然,您不能用大写字母指定html属性,否则它将添加重复的属性.

要更改文本区域元素的高度和宽度,请执行以下操作:

$textarea = new Zend_Form_Element_Textarea('body');
$textarea
    ->setAttrib('cols', '40')
    ->setAttrib('rows', '4');
Run Code Online (Sandbox Code Playgroud)

要更改文本元素的宽度:

$text = new Zend_Form_Element_Text('subject');
$text->setAttrib('size', '40');
Run Code Online (Sandbox Code Playgroud)

Der*_*huk 19

如果你采用那些属性名称和小写'em,它会工作.


Ram*_*eti 5

试试这个:

$ text = new Zend_Form_Element_Text('subject');

$ text - > setAttrib('maxlength','100');