2011-05-25 11 views
5

Tengo un menú desplegable Element_Select que estoy convirtiendo en un elemento personalizado Element_SelectCustom para que pueda poblarlo con valores directamente. Este es el elemento personalizadoextendiendo Zend_form_element_select, los errores desaparecen

<?php 

require_once ('Zend/Form/Element/Select.php'); 

class Zend_Form_Element_SelectCustom extends Zend_Form_Element_Select 
{ 
    public function init() { 
     $this->addMultiOptions(array(
      'NULL' => 'Choose Value', 
      '1' => 'First', 
      '2' => 'Second', 
      '3' => 'Third', 
     )); 
     return parent::init(); 
    } 

El problema es que cuando agrego el nuevo elemento personalizado al formulario y configurarlo para que se requiere, no se dispara un error cuando no elijo un valor.

$test = new Zend_Form_Element_SelectCustom('test'); 
$test->setRequired(true); 
$this->addElement($test); 

No tengo idea de qué le pasa. ¿Hay quizás otro método que necesito reiniciar?

Respuesta

3

Tienes que cambiar 'NULL' a NULL. El primero es una cadena con el contenido "NULO", el último es un valor vacío. Una cadena vacía '' también debería estar bien.

public function init() 
{ 
    $this->addMultiOptions(array(
     NULL => 'Choose Value', // '' => 'Choose Value' 
     '1' => 'First', 
     '2' => 'Second', 
     '3' => 'Third', 
    )); 
    return parent::init(); 
} 
+0

Gracias hombre, parece que fue eso. – sameold