2

Я использовал следующий код для этого, но он не работает. пожалуйста, помогите мне сделать это.Как отключить будущие даты в datepicker?

$(document).ready(function() { 

     $('.datepicker').datepicker({ 
      format: 'mm-dd-yyyy', 
      autoclose:true, 
      endDate: "today", 

     }).on('changeDate', function (ev) { 
       $(this).datepicker('hide'); 
      }); 


     $('.datepicker').keyup(function() { 
      if (this.value.match(/[^0-9]/g)) { 
       this.value = this.value.replace(/[^0-9^-]/g, ''); 
      } 
     }); 
    }); 
+0

Попробуйте '$ ("ID") DatePicker ('вариант', 'MaxDate', новый Date());' – KiRa

+0

об изменении Дата:., Как только вы получите дату, которая является выбранный просто проанализировать эту дату в этой строке '$ (« ID »). datepicker ({maxDate: selected Date()});' добавьте эту строку в 'on ('ChangeDate')' событие. –

+0

, или если вы хотите отключить даты до изменения, чем выше, KiRa предоставит решение уже. –

ответ

4

Вы можете сделать это: Datepicker имеет возможность maxDate

$(document).ready(function() { 
 
     var today = new Date(); 
 
     $('.datepicker').datepicker({ 
 
      format: 'mm-dd-yyyy', 
 
      autoclose:true, 
 
      endDate: "today", 
 
      maxDate: today 
 
     }).on('changeDate', function (ev) { 
 
       $(this).datepicker('hide'); 
 
      }); 
 

 

 
     $('.datepicker').keyup(function() { 
 
      if (this.value.match(/[^0-9]/g)) { 
 
       this.value = this.value.replace(/[^0-9^-]/g, ''); 
 
      } 
 
     }); 
 
    });
<link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> 
 

 
<script src="https://code.jquery.com/jquery-1.12.4.js"></script> 
 
    <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 
 

 
<p>Select Date: <input type="text" class="datepicker"></p>

+0

$ не определен ... Пожалуйста, добавьте ссылку jQuery выше, чтобы завершить пример. –

+0

@SoniVimal Спасибо за редактирование. –

+0

Пожалуйста, подтвердите мое последнее обновление. Сейчас, наконец, работает. :) –

0

с помощью вы можете acchive это.

Working fiddle

$("#datepicker").datepicker({ 
    dateFormat: 'yy-mm-dd ', 
    maxDate:'0' 
});