Foros del Web » Programando para Internet » Javascript » Frameworks JS »

calendario datepicker pagina nueva con variables get

Estas en el tema de calendario datepicker pagina nueva con variables get en el foro de Frameworks JS en Foros del Web. hola que tal amigos del foro, necesito su ayuda, resulta que tengo un calendario en el cual necesito que al dar clic en algun dia, ...
  #1 (permalink)  
Antiguo 17/11/2011, 20:05
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 10 meses
Puntos: 1
calendario datepicker pagina nueva con variables get

hola que tal amigos del foro, necesito su ayuda, resulta que tengo un calendario en el cual necesito que al dar clic en algun dia, mande la fecha por la url!!!!!

este es el codigo del calendario

Código PHP:
<!--Librerias que ocupa el calendario-->
<
link rel=stylesheet href="jquery.calendarPicker.css" type="text/css" media="screen">
<
script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js"></script>
<script type="text/javascript" src="jquery.calendarPicker.js"></script>
<script type="text/javascript" src="jquery.mousewheel.js"></script>


<div id="dsel1" style="width:240px"></div><!--Aqui aparecera el calendario-->

<span id="wtf"></span><!--cuando seleccionemos una fecha en el calendario aqui aparecera la fecha-->

<script type="text/javascript">


  var calendarPicker1 = $("#dsel1").calendarPicker({
    monthNames:["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"],
    dayNames: ["Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab"],
    //useWheel:true,
    //callbackDelay:500,
    //years:1,
    //months:3,
    //days:4,
    //showDayArrows:false,
    callback:function(cal) {
      $("#wtf").html("Selected date: " + cal.currentDate);
        $('#wtf').click(function() {
var theUrl='pagina.php?date='+cal.currentDate;
document.location.href = theUrl;
});

    }});

</script> 
el codigo jquery.calendarPicker.css

Código PHP:
.calBox {
    
background-color#FFF;
  /*background-color: #928d81;*/
  
padding2px;
  
/*-moz-border-radius: 4px;*/
  
text-aligncenter;
  
colorwhite;
  
font-familyHelveticasans-serif;
}

.
calElement {
  
margin1px;
  
displayinline-block;
  
overflow:hidden;
}

.
calYear {
  
font-size20px;
  
/*border-bottom: 1px dashed #666;*/
  
padding-bottom5px;
  
margin-bottom5px;
  
color:#FF3333;
  
font-size:17px;
  
font-weight:bold;
}

.
calYear .calElement {
  
/*border: 1px solid #999999;*/
}

.
calMonth {
  
/*border-bottom: 1px dashed #666;*/
  
padding-bottom5px;
  
margin-bottom5px;
  
font-weight:bold;
}

.
calMonth .calElement {
  
font-size12px;
  
/*border: 1px solid #999999;*/
  
background-color:#CCC;
}

.
calDay {
}

.
calDay .calElement {
  
font-size10px;
  
/*border: 1px solid #999999;*/
  
background-color:#CCC;
}

.
calDay .calElement.prev {
  
backgroundtransparent url(images/prev.pngno-repeat 0 18px;
  
width6px;
  
height35px
}

.
calDay .calElement.next {
  
backgroundtransparent url(images/next.pngno-repeat 0 18px;
  
width6px;
  
height35px;
}

span.calElement.next:hoverspan.calElement.prev:hover {
  
/*border: 1px solid #999999;*/
  
cursorpointer;
}

.
calDay .calElement .dayNumber {
  
font-size20px;
}


.
calElement.selected {
  
background-color#FF3333;
  /*border: 1px solid #404040;
  -moz-border-radius: 3px;*/
}

span.calElement:hover {
  
background-color#404040;
  /*border: 1px solid #404040;
  -moz-border-radius: 3px;*/
  
cursorpointer;
}

.
calElement.today {
  
/*border: 1px solid #e0e000;
  -moz-border-radius: 3px*/
}

.
calElement.selected2 {
  
background-color#FFF;
  /*border: 1px solid #404040;
  -moz-border-radius: 3px;
  color:#C30;*/
}

span2.calElement:hover {
  
background-color#FFF;
  /*border: 1px solid #404040;
  -moz-border-radius: 3px;*/
  
cursorpointer;

  #2 (permalink)  
Antiguo 17/11/2011, 20:06
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: calendario datepicker pagina nueva con variables get

el codigo jquery.calendarPicker.js

Código PHP:
jQuery.fn.calendarPicker = function(options) {
  
// --------------------------  start default option values --------------------------
  
if (!options.date) {
    
options.date = new Date();
  }

  if (
typeof(options.years) == "undefined")
    
options.years=0;

  if (
typeof(options.months) == "undefined")
    
options.months=3;

  if (
typeof(options.days) == "undefined")
    
options.days=4;

  if (
typeof(options.showDayArrows) == "undefined")
    
options.showDayArrows=true;

  if (
typeof(options.useWheel) == "undefined")
    
options.useWheel=true;

  if (
typeof(options.callbackDelay) == "undefined")
    
options.callbackDelay=500;
  
  if (
typeof(options.monthNames) == "undefined")
    
options.monthNames = ["Jan""Feb""Mar""Apr""May""Jun""Jul""Aug""Sep""Oct""Nov""Dec"];

  if (
typeof(options.dayNames) == "undefined")
    
options.dayNames = ["Sun""Mon""Tue""Wed""Thu""Fri""Sat"];


  
// --------------------------  end default option values --------------------------

  
var calendar = {currentDateoptions.date};
  
calendar.options options;

  
//build the calendar on the first element in the set of matched elements.
  
var theDiv this.eq(0);//$(this);
  
theDiv.addClass("calBox");

  
//empty the div
  
theDiv.empty();


  var 
divYears = $("<div>").addClass("calYear");
  var 
divMonths = $("<div>").addClass("calMonth");
  var 
divDays = $("<div>").addClass("calDay");


  
theDiv.append(divYears).append(divMonths).append(divDays);

  
calendar.changeDate = function(date) {
    
calendar.currentDate date;

    var 
fillYears = function(date) {
      var 
year date.getFullYear();
      var 
= new Date();
      
divYears.empty();
      var 
nc options.years*2+1;
      var 
parseInt((theDiv.width()-4-(nc)*4)/nc)+"px";
      for (var 
year options.years<= year options.yearsi++) {
        var 
= new Date(date);
        
d.setFullYear(i);
        var 
span = $("<span2>").addClass("calElement").attr("millis"d.getTime()).html(i).css("width",w);
        if (
d.getYear() == t.getYear())
          
span.addClass("today");
        if (
d.getYear() == calendar.currentDate.getYear())
          
span.addClass("selected2");
        
divYears.append(span);
      }
    }

    var 
fillMonths = function(date) {
      var 
month date.getMonth();
      var 
= new Date();
      
divMonths.empty();
      var 
oldday date.getDay();
      var 
nc options.months*2+1;
      var 
parseInt((theDiv.width()-4-(nc)*4)/nc)+"px";
      for (var 
= -options.months<= options.monthsi++) {
        var 
= new Date(date);
        var 
oldday d.getDate();
        
d.setMonth(month i);

        if (
d.getDate() != oldday) {
          
d.setMonth(d.getMonth() - 1);
          
d.setDate(28);
        }
        var 
span = $("<span>").addClass("calElement").attr("millis"d.getTime()).html(options.monthNames[d.getMonth()]).css("width",w);
        if (
d.getYear() == t.getYear() && d.getMonth() == t.getMonth())
          
span.addClass("today");
        if (
d.getYear() == calendar.currentDate.getYear() && d.getMonth() == calendar.currentDate.getMonth())
          
span.addClass("selected");
        
divMonths.append(span);

      }
    }

    var 
fillDays = function(date) {
      var 
day date.getDate();
      var 
= new Date();
      
divDays.empty();
      var 
nc options.days*2+1;
      var 
parseInt((theDiv.width()-4-(options.showDayArrows?12:0)-(nc)*4)/(nc-(options.showDayArrows?2:0)))+"px";
      for (var 
= -options.days<= options.daysi++) {
        var 
= new Date(date);
        
d.setDate(day i)
        var 
span = $("<span>").addClass("calElement").attr("millis"d.getTime())
        if (
== -options.days && options.showDayArrows) {
          
span.addClass("prev");
        } else if (
== options.days && options.showDayArrows) {
          
span.addClass("next");
        } else {
          
span.html("<span class=dayNumber>" d.getDate() + "</span><br>" options.dayNames[d.getDay()]).css("width",w);
          if (
d.getYear() == t.getYear() && d.getMonth() == t.getMonth() && d.getDate() == t.getDate())
            
span.addClass("today");
          if (
d.getYear() == calendar.currentDate.getYear() && d.getMonth() == calendar.currentDate.getMonth() && d.getDate() == calendar.currentDate.getDate())
            
span.addClass("selected");
        }
        
divDays.append(span);

      }
    }

    var 
deferredCallBack = function() {
      if (
typeof(options.callback) == "function") {
        if (
calendar.timer)
          
clearTimeout(calendar.timer);

        
calendar.timer setTimeout(function() {
          
options.callback(calendar);
        }, 
options.callbackDelay);
      }
    }


    
fillYears(date);
    
fillMonths(date);
    
fillDays(date);

    
deferredCallBack();

  }

  
theDiv.click(function(ev) {
    var 
el = $(ev.target).closest(".calElement");
    if (
el.hasClass("calElement")) {
      
calendar.changeDate(new Date(parseInt(el.attr("millis"))));
    }
  });


  
//if mousewheel
  
if ($.event.special.mousewheel && options.useWheel) {
    
divYears.mousewheel(function(eventdelta) {
      var 
= new Date(calendar.currentDate.getTime());
      
d.setFullYear(d.getFullYear() + delta);
      
calendar.changeDate(d);
      return 
false;
    });
    
divMonths.mousewheel(function(eventdelta) {
      var 
= new Date(calendar.currentDate.getTime());
      
d.setMonth(d.getMonth() + delta);
      
calendar.changeDate(d);
      return 
false;
    });
    
divDays.mousewheel(function(eventdelta) {
      var 
= new Date(calendar.currentDate.getTime());
      
d.setDate(d.getDate() + delta);
      
calendar.changeDate(d);
      return 
false;
    });
  }


  
calendar.changeDate(options.date);

  return 
calendar;
}; 
y por ultimo el codigo jquery.mousewheel.js

Código PHP:
/*! Copyright (c) 2009 Brandon Aaron (http://brandonaaron.net)
 * Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
 * and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
 * Thanks to: http://adomas.org/javascript-mouse-wheel/ for some pointers.
 * Thanks to: Mathias Bank(http://www.mathias-bank.de) for a scope bug fix.
 *
 * Version: 3.0.2
 * 
 * Requires: 1.2.2+
 */

(function($) {

var 
types = ['DOMMouseScroll''mousewheel'];

$.
event.special.mousewheel = {
    
setup: function() {
        if ( 
this.addEventListener )
            for ( var 
i=types.lengthi; )
                
this.addEventListenertypes[--i], handlerfalse );
        else
            
this.onmousewheel handler;
    },
    
    
teardown: function() {
        if ( 
this.removeEventListener )
            for ( var 
i=types.lengthi; )
                
this.removeEventListenertypes[--i], handlerfalse );
        else
            
this.onmousewheel null;
    }
};

$.
fn.extend({
    
mousewheel: function(fn) {
        return 
fn this.bind("mousewheel"fn) : this.trigger("mousewheel");
    },
    
    
unmousewheel: function(fn) {
        return 
this.unbind("mousewheel"fn);
    }
});


function 
handler(event) {
    var 
args = [].slice.callarguments), delta 0returnValue true;
    
    
event = $.event.fix(event || window.event);
    
event.type "mousewheel";
    
    if ( 
event.wheelDelta delta event.wheelDelta/120;
    if ( 
event.detail     delta = -event.detail/3;
    
    
// Add events and delta to the front of the arguments
    
args.unshift(eventdelta);

    return $.
event.handle.apply(thisargs);
}

})(
jQuery); 
Ahora lo que necesito es que cuando se de clic en alguna fecha en lugar de que la fecha aparezca en el <span id="wtf"></span> se vaya a una pagina (pagina.php?date=dd-mm-yyyy) con la fecha seleccionada en el formato dd-mm-yyyy OJALA Y ME PUEDAN AYUDAR MUCHAS GRACIAS!!!!!
  #3 (permalink)  
Antiguo 17/11/2011, 20:22
Avatar de DataLore  
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: calendario datepicker pagina nueva con variables get

Tienes que ver los eventos que soporta el datepicker:

http://docs.jquery.com/UI/Datepicker#events


Particularmente el evento onSelect debería ser el que necesitas:

http://docs.jquery.com/UI/Datepicker#event-onSelect
  #4 (permalink)  
Antiguo 18/11/2011, 10:50
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: calendario datepicker pagina nueva con variables get

Alguien me puede ayudar con el codigo para que me mande a otra pagina, y para que me mande el formato de fecha dd-mm-yyyy en la url?????

Última edición por andoencombi; 18/11/2011 a las 16:51
  #5 (permalink)  
Antiguo 18/11/2011, 16:54
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: calendario datepicker pagina nueva con variables get

Cita:
Iniciado por andoencombi Ver Mensaje
Alguien me puede ayudar con el codigo para que me mande a otra pagina, y para que me mande el formato de fecha dd-mm-yyyy en la url?????
Nadie??? porfavor ando desesperado
  #6 (permalink)  
Antiguo 19/11/2011, 08:27
Avatar de DataLore  
Fecha de Ingreso: junio-2008
Mensajes: 58
Antigüedad: 16 años, 6 meses
Puntos: 5
Respuesta: calendario datepicker pagina nueva con variables get

Pudiste ver los links que te pasé ?? Intentaste hacer algo con esa inforamción ? O no era del todo claro?
  #7 (permalink)  
Antiguo 22/11/2011, 11:43
 
Fecha de Ingreso: febrero-2011
Mensajes: 195
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: calendario datepicker pagina nueva con variables get

si vi los links que me dejaste, pero no me funcionaron, como que no fueron muy claros!!!! te agradecere si me ayudas a armar el codigo, Gracias!!!!
  #8 (permalink)  
Antiguo 22/11/2011, 15:22
 
Fecha de Ingreso: julio-2010
Mensajes: 275
Antigüedad: 14 años, 5 meses
Puntos: 21
Respuesta: calendario datepicker pagina nueva con variables get

como envias los datos por url? Generalmente se usa el metodo GET para enviarlos por url

Etiquetas: ajax, calendario, datepicker, jquery, js, php, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:24.