2010-04-09 21 views
32

HI Guys,JQuery Calcular diferencia de días en 2 cuadros de texto de fecha

Tengo 2 asp.net texboxes con extensor de calendario. Quiero saber el número de días entre ambas fechas cuando se cambia uno de los controles de fecha. ¿Cómo puedo lograr esto usando jquery o javascript?

+2

Tal vez esto ayuda que http://stackoverflow.com/questions/542938/how-do-i-get -el-número-de-días-entre-dos-fechas-en-jquery –

+0

@Aneef, es posible que desee actualizar el título de su pregunta. Dice "casillas de verificación" donde supongo que quisiste decir "cajas de texto". –

Respuesta

64

Esto debe hacer el truco

var start = $('#start_date').val(); 
var end = $('#end_date').val(); 

// end - start returns difference in milliseconds 
var diff = new Date(end - start); 

// get days 
var days = diff/1000/60/60/24; 

Ejemplo

var start = new Date("2010-04-01"), 
    end = new Date(), 
    diff = new Date(end - start), 
    days = diff/1000/60/60/24; 

days; //=> 8.525845775462964 
+0

¡Perfecto! ¡Justo lo que necesitaba! ¡Gracias! –

+1

Para mí, var diff = new Date (Date.parse (to) - Date.parse (from)) funciona. Gran respuesta, sin embargo :) – Gogol

2

1) Html

<input type="text" id="firstDate" name="firstDate"/> 
<input type="text" id="secondDate" name="secondDate"/> 

2) Jquery

$("#firstDate").datepicker({ 

}); 
$("#secondDate").datepicker({ 
    onSelect: function() { 
     myfunc(); 
    } 
}); 

function myfunc(){ 
    var start= $("#firstDate").datepicker("getDate"); 
    var end= $("#secondDate").datepicker("getDate"); 
    days = (end- start)/(1000 * 60 * 60 * 24); 
    alert(Math.round(days)); 
} 

jsFiddle ejemplo de trabajo here

-1

Esta es una manera simple de conseguir los días entre dos fechas

var nites = dateDiff(arriveDate,departDate,"D"); 
+0

dateDiff no está incorporado en la función javascript o jquery. – RLHawk

Cuestiones relacionadas