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()
);
}
* *
Código Javascript:
Ver original
<script type="text/javascript"> var disabledDays =JSON.parse('<?php echo json_encode($this->dias) ?>'); var diasclase =JSON.parse('<?php echo json_encode($this->diasclase) ?>'); function disableAllTheseDays(date) { var m = date.getMonth(), d = date.getDate(), y = date.getFullYear(); for(i = 0; i < disabledDays.length; i++) { if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1) { return [false, "", "Unavailable"]; } } if($.inArray(date.getDay(), diasclase) > -1) { return [false, "", "Unavailable"]; } return [true]; } </script> <?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