Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/05/2013, 12:35
mandygr87
 
Fecha de Ingreso: abril-2013
Mensajes: 82
Antigüedad: 11 años, 8 meses
Puntos: 0
Problema beforeShowDay ZendX_JQuery_Form_Element_DatePicker

Hola.

Tengo un form en el que tengo un ZendX_JQuery_Form_Element_DatePicker. Quiero añadirle beforeShowDay pero no me funciona. ¿Me pueden ayudar?

Mi formulario es el siguiente:

Código PHP:
public function init()
    {
       
$fecha = new ZendX_JQuery_Form_Element_DatePicker('fecha', array('readonly'=>'readonly'));
       
$fecha->setLabel('Seleccione fecha:')->setJQueryParam('dateFormat''yy-mm-dd')
             ->
setJqueryParam('regional''es')
             ->
setJqueryParam('yearRange'"2013:2020")->setJqueryParam('minDate'"+0d")->setJqueryParam('maxDate'"+3m")
             ->
setJqueryParam('beforeShowDay'disableAllTheseDays)
             ->
addValidator(new Zend_Validate_Date(array('format' => 'yyyy-mm-dd',)))->setRequired(true);

       
$this->addElements(array($fecha));

       
$this->addElement(
                    
'submit''Consultar Reserva', array()
            );
    } 
Y en la vista tengo:

* *
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.  
  3.  var disabledDays =JSON.parse('<?php echo json_encode($this->dias) ?>');
  4.  
  5.  
  6.     var diasclase =JSON.parse('<?php echo json_encode($this->diasclase) ?>');
  7.  
  8.  
  9.     function disableAllTheseDays(date) {
  10.     var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
  11.     for(i = 0; i < disabledDays.length; i++) {
  12.         if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1) {
  13.             return [false, "", "Unavailable"];
  14.         }
  15.     }
  16.      if($.inArray(date.getDay(), diasclase) > -1) {
  17.         return [false, "", "Unavailable"];
  18.     }
  19.     return [true];
  20. }
  21.  
  22. </script>
  23.  
  24.  
  25.  
  26. <?php echo $this->form;?>

Si quito el ->setJqueryParam('beforeShowDay', disableAllTheseDays) de mi form funciona perfectamente, pero si lo añado ya no me aparece el calendario.
¿Alguien me puede ayudar? Gracias