проверьте, является ли значение в элементе html datepicker пустым и выполняет функцию jquery

Я использую jquery datepicker в своей форме. Я проверяю, является ли дата пустой с помощью jquery и проверяет, выбрана ли дата в воскресенье.

Я использую функцию Blur, поскольку я не мог найти ни одного события выбора даты, которое проверит, пусто ли это значение.

Используя функцию Blur, я могу проверить, является ли дата воскресной, выполнив Ajax в функции setinterval.

Но теперь проблема в том, что если я выберу датупик, и если я превышу время, установленное в функции setinterval. Он не выполняет проверку, является ли день воскресным днем. Как я могу это решить? Я знаю, что увеличение интервала времени может решить это, но я хотел что-то вроде события или somthing, которые могут вызвать функцию, чтобы проверить, является ли эта дата воскресной.

Следующий мой код.

элемент datepicker в html-файле ниже

<p class="datepair" data-language="javascript"> <label>Day<em>*</em></label> <input type="text" id="date_o" placeholder="Please select date" class="date start" /> </p> 

Функция JQuery ниже:

 $(function(){ $('.datepair input.date').blur(function () { setTimeout(function () { if($("#date_o").val() != '' ){ var date_val = $("#date_o").val(); $.ajax({ data: 'date='+date_val, url:'common/ajax/date_check.php', success:function(data){ if(data=="sunday"){ alert('Sorry You cant book on a Sunday.!!!'); $("#date_o").val(''); }else{ } } }); }else{ } },3000); }); }); 

и php-файл, чтобы проверить, является ли дата воскресной. который работает в течение 3 секунд, что date_check.php:

 if(date('w', strtotime($_REQUEST['date'])) == 0) { echo 'sunday'; } 

Solutions Collecting From Web of "проверьте, является ли значение в элементе html datepicker пустым и выполняет функцию jquery"

Используйте .onSelect() :

 $("#date_o").datepicker({ onSelect: function(dateText, inst) { if($("#date_o").val() != '' ){ var date_val = $("#date_o").val(); $.ajax({ data: 'date='+date_val, url:'common/ajax/date_check.php', success:function(data){ if(data=="sunday"){ alert('Sorry You cant book on a Sunday.!!!'); $("#date_o").val(''); }else{ } } }); } } }); 

Вам также не нужно использовать серверную часть, чтобы проверить, является ли день воскресным:

 $("#date_o").datepicker({ onSelect: function(dateText, inst) { var d = new Date(dateText); if(d.getDay() == 0){ alert('You cannot choose sunday!'); $('#date_o').val(''); } } }); 

Вот работающий jsFiddle