Formulario Zend: ¿Cómo establecer la longitud de una entrada de texto o elemento de área de texto?
Por defecto, los elementos de texto de formulario Zend no tienen un ancho especificado. Los elementos de Textarea tienen un valor predeterminado derows="24"
ycols="80"
. Pero cuando establezco un valor diferente ...
$body = new Zend_Form_Element_Textarea('body');
$body->setLabel('Body:')
->setRequired(true)
->setAttrib('COLS', '40')
->setAttrib('ROWS', '4');
$this->addElement($body);
... los atributos solo se agregan, no se cambian:
<textarea name="body" id="body" COLS="40" ROWS="4" rows="24" cols="80">
¿Cuál es la forma correcta de especificar un ancho y alto de un elemento de área de texto y el ancho de columna de un elemento de texto?
Solución:Aparentemente, no puede especificar atributos html en letras mayúsculas o de lo contrario agregará atributos duplicados.
Para cambiar la altura y el ancho de un elemento de área de texto:
$textarea = new Zend_Form_Element_Textarea('body');
$textarea
->setAttrib('cols', '40')
->setAttrib('rows', '4');
Para cambiar el ancho de un elemento de texto:
$text = new Zend_Form_Element_Text('subject');
$text->setAttrib('size', '40');