Foros del Web » Programando para Internet » PHP » Zend »

Agregar Div al zend form

Estas en el tema de Agregar Div al zend form en el foro de Zend en Foros del Web. Hola buenas , estoy intentando introducir el label y el input entre los div con zend form , pero no consigo lograrlo. este es mi ...
  #1 (permalink)  
Antiguo 30/05/2011, 11:15
 
Fecha de Ingreso: mayo-2011
Mensajes: 256
Antigüedad: 12 años, 11 meses
Puntos: 5
Agregar Div al zend form

Hola buenas , estoy intentando introducir el label y el input entre los div con zend form , pero no consigo lograrlo.

este es mi form.

Código PHP:
$this->clearDecorators()
         ->
addDecorator('FormElements')
         ->
addDecorator('HtmlTag', array('tag' => 'div'))
         ->
addDecorator('Form'); 
        
$name = new Zend_Form_Element_Text('name',
                        array(
'label' => 'Name:',
                            
'required' => true,
                            
'filters' => array('StringTrim'),
                            
'maxlength' => 64
                        
)
        );

        
        
$name->setDecorators(array( 'ViewHelper''Errors''Label',));
this->addElements(array($name);
         
$this->setElementDecorators(array(
            array(
'ViewHelper'),
            array(
'Errors',array('class'=>'error-list')),
            array(
'Label', array('class'  => 'fs16')),

        )); 
Esta es la salida que me da mi form.
Código HTML:
<div>
<label class="fs16 required" for="name">Name:</label>

<input type="text" class="Bnone" maxlength="64" value="" id="name" name="name">
</div> 
Y esta es como me gustaria.
Código HTML:
<div>
<div>
<label class="fs16 required" for="name">Name:</label>
</div>
<div>
<input type="text" class="Bnone" maxlength="64" value="" id="name" name="name">
</div>
</div> 
Podeis indicarme como puedo , ya he probado varias maneras , pero no sale,
como por ej.
En mi elemento nombre....
Código PHP:
$name->setDecorators(array(
    
'ViewHelper',array(array('label' => 'HtmlTag'), array('tag' => 'div''placement' => 'prepend')) 
un saludo
  #2 (permalink)  
Antiguo 30/05/2011, 13:17
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Agregar Div al zend form

Podría ser algo así:

Código PHP:
Ver original
  1. ...
  2. $this->addElement('text', 'name', array(
  3.     'label' => 'Name:',
  4.     'decorators' => array(
  5.         array('Label', array('class'  => 'fs16')),                                                         
  6.         array(array('LabelWrapper' => 'HtmlTag'), array('tag' => 'div')),
  7.         array(array('StartInputWrapper' => 'HtmlTag'), array('tag'=>'div', 'openOnly' => true, 'placement' => 'append')),
  8.         array('ViewHelper'),               
  9.         array(array('EndInputWrapper' =>'HtmlTag'), array('tag'=>'div', 'closeOnly' => true, 'placement'=>'append')),
  10.         array('Errors', array('class'=>'error-list'))                                                      
  11.     )                          
  12. ));
  13. ...

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 30/05/2011, 15:43
 
Fecha de Ingreso: mayo-2011
Mensajes: 256
Antigüedad: 12 años, 11 meses
Puntos: 5
Respuesta: Agregar Div al zend form

Gracias he probado de varias maneras y no funciona salta el error can not open with mode a....

este es mi codigo

Código PHP:
$name->addDecorator(array( 'ViewHelper''Errors''Label','decorators' =>array(array('Label'),array('class'=>'fs16')),
                                 array(array(
'LabelWrapper' => 'HtmlTag'), array('tag' => 'div')),
                                 array(array(
'StartInputWrapper' => 'HtmlTag'), array('tag'=>'div''openOnly' => true'placement' => 'append')),
                                 array(
'ViewHelper'),
                                 array(
'EndInputWrapper' =>'HtmlTag'),
                                 array(
'tag'=>'div''closeOnly' => true'placement'=>'append'))); 
He probado copn set , con add Decorator , de distintas maneras...y nada, ademas mi elemento es un zend_form_element..

por eso hago un $name->setDecorator or addDecorators...

Alguna ayuda , gracias
  #4 (permalink)  
Antiguo 30/05/2011, 16:04
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Agregar Div al zend form

Lo has puesto tal cual en el init y no te funciona ?


Código PHP:
Ver original
  1. //CustomForm
  2. public function init()
  3. {  
  4.     $this->addElement('text', 'name', array(
  5.         'label' => 'Name:',
  6.         'decorators' => array(
  7.             array('Label', array('class'  => 'fs16')),                                                          
  8.             array(array('LabelWrapper' => 'HtmlTag'), array('tag' => 'div')),
  9.             array(array('StartInputWrapper' => 'HtmlTag'), array('tag'=>'div', 'openOnly' => true, 'placement' => 'append')),
  10.             array('ViewHelper'),                
  11.             array(array('EndInputWrapper' =>'HtmlTag'), array('tag'=>'div', 'closeOnly' => true, 'placement'=>'append')),
  12.             array('Errors', array('class'=>'error-list'))                                                      
  13.         )                          
  14.     ));
  15. }
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 31/05/2011, 01:13
 
Fecha de Ingreso: mayo-2011
Mensajes: 256
Antigüedad: 12 años, 11 meses
Puntos: 5
Respuesta: Agregar Div al zend form

Perfecto , mil gracias...

Etiquetas: frameworks-y-php-orientado-a-objetos, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:09.