2016-12-27 3 views
-1

Я использую jQuery datepicker. В моей заявке у меня есть startDate и endDate диапазонов дат.Как найти дни между двумя датами в JavaScript или jQuery datepicker?

Если мой диапазон дат меньше недели (7 дней), мне нужно отключить текстовое поле дня. Пожалуйста, смотрите изображение ниже

Ожидаемый результат: Expected Output

я могу иметь возможность получить количество дней разницы между датам, как это;

var startDate = $('#startDate').datepicker('getDate'); 
var endDate = $('#endDate').datepicker('getDate'); 
//find difference between start and end date 
var noOfDays = Math.ceil((startDate - startDate)/(1000 * 60 * 60 * 24)); 

Если noOfDays менее чем за 7 дней, мне нужно отключить день текстовое поле в соответствии с диапазоном дат. Для этого мне нужны списки дней между диапазонами дат.

Согласно моему примеру, изображение Mon и Sun должно быть отключено.

['Tue','Wed','Thu','Fri','Sat'] или соответствующие значения дня UTC ['1','2','3','4','5'] должны быть включены.

Может ли кто-нибудь вести меня, чтобы получить дневные значения?

+0

вар STARTDATE = $ ('# STARTDATE') DatePicker ('GetDate.'); var endDate = $ ('# endDate'). Datepicker ('getDate'); var diffDays = endDate.getDate() - startDate.getDate(); предупреждение (diffDays); –

+0

@prakashtank: Я могу найти разницу в днях. Но мне нужны дни между диапазонами дат, например '['Tue', 'Wed', 'Thu', 'Fri', 'Sat']' – Ranjith

ответ

1

Попробуйте это: месяц начинается с 0.

var from = new Date(2016, 11, 29); 
var to = new Date(2016, 11, 31); 
var DAYS = ['Sun', 'Mon', 'Tu', 'Wed', 'Th', 'Fri', 'Sat']; 

var d = from; 
while (d <= to) { 
    alert(DAYS[d.getDay()]); 
    d = new Date(d.getTime() + (24 * 60 * 60 * 1000)); 
} 
+0

Вы мужчина bravo. Это именно то, что мне нужно. Спасибо :) – Ranjith

+0

рад, что это помогло :) –