Seleccionar fecha mediante un calendario PHP+JS
Escrito por J.F. el Monday, 10 de September 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
Comentarios (1)
Categoria: Javascript,PHP
- Añadir este post a
- Del.icio.us -
- Meneame -
- Digg -
- Webeame
Entradas relacionadas
Comentario de zkekxi
Realizado el Wednesday, 18 de March del 2009 a las 4:32
I left the edge. Im in ragged gasps, kneading my hair, urging.
