Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Problema con datepicker

Estas en el tema de Problema con datepicker en el foro de Jquery en Foros del Web. Tengo esto: @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver original function ingresarFechasCalendario ( fechaBaseDatos )             {         ...
  #1 (permalink)  
Antiguo 14/11/2013, 10:39
Avatar de Maverick2786  
Fecha de Ingreso: diciembre-2012
Mensajes: 107
Antigüedad: 12 años
Puntos: 1
Problema con datepicker

Tengo esto:
Código Javascript:
Ver original
  1. function ingresarFechasCalendario(fechaBaseDatos)
  2.             {
  3.                 var dates = ['11-10-2013', '11-12-2013'];
  4.                 //tips are optional but good to have
  5.  
  6.                 $('#fechaBitacora1').datepicker({
  7.                     dateFormat: 'dd/mm/yy',
  8.                     beforeShowDay: highlightDays,
  9.                     showOtherMonths: true,
  10.                     numberOfMonths: 1,
  11.                 });
  12.  
  13.                 function highlightDays(date) {
  14.                     for (var i = 0; i < dates.length; i++) {
  15.                         if (new Date(dates[i]).toString() == date.toString()) {
  16.                             return [true, 'highlight', ];
  17.                         }
  18.                     }
  19.                     return [true, ''];
  20.                 }
  21.  
  22.             }

pero al tenerlo dentro de una funcion me da este error:
Uncaught TypeError: Object [object Object] has no method 'datepicker'

en cambio si lo tengo de esta forma , si funciona:
Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.                 var dates = ['11-10-2013', '11-12-2013'];
  3.                 //tips are optional but good to have
  4.  
  5.                 $('#fechaBitacora1').datepicker({
  6.                     dateFormat: 'dd/mm/yy',
  7.                     beforeShowDay: highlightDays,
  8.                     showOtherMonths: true,
  9.                     numberOfMonths: 1,
  10.                 });
  11.  
  12.                 function highlightDays(date) {
  13.                     for (var i = 0; i < dates.length; i++) {
  14.                         if (new Date(dates[i]).toString() == date.toString()) {
  15.                             return [true, 'highlight', ];
  16.                         }
  17.                     }
  18.                     return [true, ''];
  19.                 }
  20.  
  21.             });

pero yo necesito llamarlo en un evento especifico por medio de boton , no cuando cargue

muchas gracias
  #2 (permalink)  
Antiguo 14/11/2013, 12:49
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problema con datepicker

Una pregunta, ¿en qué parte usas a la variable fechaBaseDatos?, es que veo que tu función recibe ese dato, pero dentro de la función, no veo que la uses, por lo que no encuentro necesidad de que tengas que usar esa función. Ahora bien, si esa función se activa cuando le das clic a un botón como leo por ahí, solamente debes de incluir ese código dentro del método click:

Código Javascript:
Ver original
  1. $("#tuBoton").click(function(){
  2.    var dates = ['11-10-2013', '11-12-2013'];
  3.     //tips are optional but good to have
  4.  
  5.     $('#fechaBitacora1').datepicker({
  6.         dateFormat: 'dd/mm/yy',
  7.         beforeShowDay: highlightDays,
  8.         showOtherMonths: true,
  9.         numberOfMonths: 1,
  10.     });
  11.  
  12.     function highlightDays(date) {
  13.         for (var i = 0; i < dates.length; i++) {
  14.             if (new Date(dates[i]).toString() == date.toString()) {
  15.                 return [true, 'highlight', ];
  16.             }
  17.         }
  18.         return [true, ''];
  19.     }
  20. });

Prueba esto y nos cuentas cómo te fue, saludos.
  #3 (permalink)  
Antiguo 14/11/2013, 15:12
Avatar de Maverick2786  
Fecha de Ingreso: diciembre-2012
Mensajes: 107
Antigüedad: 12 años
Puntos: 1
Respuesta: Problema con datepicker

fechaBaseDatos seria la variable que tendria los valores en ves de var dates = ['11-10-2013', '11-12-2013'];

var dates = ['11-10-2013', '11-12-2013']; es solo un ejemplo de la informacion que tiene la variable fechaBaseDatos
  #4 (permalink)  
Antiguo 14/11/2013, 17:46
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problema con datepicker

Ok, entonces, en la línea $("#tuBoton").click(function(){ colocala variable que recibes, quedando de la siguiente forma:

Código Javascript:
Ver original
  1. $("#tuBoton").click(function(fechaBaseDatos){
  2.    var dates = ['11-10-2013', '11-12-2013'];
  3.     //tips are optional but good to have
  4.  
  5.     $('#fechaBitacora1').datepicker({
  6.         dateFormat: 'dd/mm/yy',
  7.         beforeShowDay: highlightDays,
  8.         showOtherMonths: true,
  9.         numberOfMonths: 1,
  10.     });
  11.  
  12.     function highlightDays(date) {
  13.         for (var i = 0; i < dates.length; i++) {
  14.             if (new Date(dates[i]).toString() == date.toString()) {
  15.                 return [true, 'highlight', ];
  16.             }
  17.         }
  18.         return [true, ''];
  19.     }
  20. });
  #5 (permalink)  
Antiguo 15/11/2013, 08:40
Avatar de Maverick2786  
Fecha de Ingreso: diciembre-2012
Mensajes: 107
Antigüedad: 12 años
Puntos: 1
Respuesta: Problema con datepicker

Muchas Gracias lo voy a probar, otra pregunta, el boton llama a una funcion que comprueba unos datos, despues de cumplir la comprobacion llama a una funcion ajax que envia los datos y recibe otro

Cuando reciba los datos de ajax es cuando ya asigno valor a la variable fechaBaseDatos y es cuando tendria que desplegar las fechas;

tu metedo seguira funcionando de esta manera?
  #6 (permalink)  
Antiguo 16/11/2013, 19:37
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: Problema con datepicker

Claro, alguna vez hice algo muy similar. En línea generales, sería así:

Código Javascript:
Ver original
  1. $(".button").click(function(valor){
  2.  
  3.  //Instrucciones
  4.  
  5.   var valido = funcionValidacion(datos); //Supongamos que esta función devuelve TRUE si los datos son válidos
  6.  
  7.   if (valido)
  8.     $.ajax({
  9.       //Instrucciones
  10.     });
  11.   else
  12.     alert("Los datos no son válidos");
  13. });

Luego de realizar un bloque determinado de instrucciones, invocas a la función que valida los datos, supongamos que si todos los datos son válidos, dicha función devuelve el valor booleano TRUE, luego, evalúas el valor devuelto por dicha función, si es verdadero, ejecutas el método Ajax que jQuery también lo tiene, caso contrario, puedes mostrar un mensaje de alerta indicándole al usuario que los datos no son válidos o algo por el estilo.

Saludos

Etiquetas: datepicker
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 17:53.