Seleccionar fecha mediante un calendario PHP+JS
Escrito por J.F. el Lunes, 10 de Septiembre del 2007 a las 10:22
Curioso ejemplo que me encuentro, en el cual podemos elegir una fecha para colocarla en un campo de texto mediante un calendario que nos aparece al situar el foco. El código es el siguiente, y se utiliza PHP y Javascript:

-
var cal1;
-
var over_cal = false;
-
function init() {
-
cal1 = new YAHOO.widget.Calendar("cal1","cal1Container");
-
cal1.selectEvent.subscribe(getDate, cal1, true);
-
cal1.renderEvent.subscribe(setupListeners, cal1, true);
-
YAHOO.util.Event.addListener('cal1Date', 'focus', showCal);
-
YAHOO.util.Event.addListener('cal1Date', 'blur', hideCal);
-
cal1.render();
-
}
-
-
function setupListeners() {
-
YAHOO.util.Event.addListener('cal1Container', 'mouseover', overCal);
-
YAHOO.util.Event.addListener('cal1Container', 'mouseout', outCal);
-
}
-
-
function getDate() {
-
var calDate = this.getSelectedDates()[0];
-
calDate = (calDate.getMonth() + 1) + '/' + calDate.getDate() + '/' + calDate.getFullYear();
-
YAHOO.util.Dom.get('cal1Date').value = calDate;
-
over_cal = false;
-
hideCal();
-
}
-
-
function showCal() {
-
var xy = YAHOO.util.Dom.getXY('cal1Date');
-
var date = YAHOO.util.Dom.get('cal1Date').value;
-
if (date) {
-
cal1.cfg.setProperty('selected', date);
-
cal1.cfg.setProperty('pagedate', new Date(date), true);
-
cal1.render();
-
}
-
YAHOO.util.Dom.setStyle('cal1Container', 'display', 'block');
-
xy[1] = xy[1] + 20;
-
YAHOO.util.Dom.setXY('cal1Container', xy);
-
}
-
-
function hideCal() {
-
if (!over_cal) {
-
YAHOO.util.Dom.setStyle('cal1Container', 'display', 'none');
-
}
-
}
-
-
function overCal() {
-
over_cal = true;
-
}
-
-
function outCal() {
-
over_cal = false;
-
}
-
-
YAHOO.util.Event.addListener(window, 'load', init);
Enlace: | Fuente del artículo y demo
Categoria: PHP, Javascript
- Añadir este post a
- Del.icio.us -
- Meneame -
- Digg -
- Webeame
Entradas relacionadas
Comentario de zkekxi
Realizado el Miércoles, 18 de Marzo del 2009 a las 4:32
I left the edge. Im in ragged gasps, kneading my hair, urging.
