2012-01-17 21 views
5

Soy nuevo en esto y realmente necesito su ayuda porque he estado luchando durante días con esto ... Quiero calcular los días entre dos fechas elegidas con datepicker. ¿Estoy en el camino correcto con esto o estoy haciendo esto completamente mal? Todo lo que sé es que cuando hago clic en Número de días, no muestra nada. Aquí está mi códigojquery datepicker - calcular la diferencia de fecha

<!DOCTYPE html> 
    <html> 
    <head> 
    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> 
     <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script> 
     <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 
     <script> 
     $(document).ready(function() { 

      $("#datepicker").datepicker({ minDate: "01/07/2012", maxDate: "01/30/2012" }); 

      $("#datepicker1").datepicker({ beforeShow: setminDate }); 

      var start1 = $('#datepicker');  
      function setminDate() {   
       var p = start1.datepicker('getDate');   
       if (p) { 
        var k ="01/30/2012";    
        return { 
        minDate: p, 
        maxDate:k 
       }};   
      }   
      function clearEndDate(dateText, inst) {   
       end1.val('');  
      } 
     }); 
    $(function() { 
     $("#datepicker1").datepicker({ dateFormat: 'mm/dd/yyyy' }); 
     $("#datepicker").datepicker({ dateFormat: 'mm/dd/yyyy' }); 
    }); 
    $('button').click(function() { 
     var start = $('#datepicker1').datepicker('getDate'); 
     var end = $('#datepicker').datepicker('getDate'); 
     var days = (end - start)/1000/60/60/24; 
     alert(days); 
    }); 
    </script> 
    <body> 
    <form> 
     from: 
     <input id="datepicker" readonly='true'/><br> 
     to: 
     <input id="datepicker1" readonly='true'/><br> 
    </form> 
     <br><button>number of days</button> 

    </body> 
    </html> 
+0

corregir primero el orden de inclusión de la escritura en la página en primer lugar debería 'jquery.js' ser incluido entonces los otros archivos js/lib usando el jquery – Rafay

+0

¿son valores de inicio y fin? ¿son fechas o fechas? cualquier excepción en cualquier lugar? – elijah

Respuesta

12

trabajando para mí después de hacer este cambio

var start = $('#datepicker').datepicker('getDate'); 
    var end = $('#datepicker1').datepicker('getDate'); 
    var days = (end - start)/1000/60/60/24; 
    alert(days); 

jsFiddle: http://jsfiddle.net/diode/L2et3/3/

+0

Veo en su enlace que esto funciona para usted, pero cuando copio exactamente lo mismo en mi documento, no es así. ¿Debo cambiar la pieza entre y $ (document) .ready (function()? – user1154830

+0

¿Ve algún error en firebug? – Diode

+0

Veo este evento de advertencia. El layerX y event.layerY están rotos y obsoletos en WebKit. eliminado del motor en el futuro cercano – user1154830

Cuestiones relacionadas