2017-08-03 24 views
1

ねえ、私は週末を無効にした日付ピックアップを持っています。しかし、問題は、ユーザーが週末にある日付を入力できることです。datepicker(無効な日付を無視)

$("[name=startdatecontract]").datepicker({ 
    minDate : 2, 
    beforeShowDay: $.datepicker.noWeekends 
}); 

ユーザーが書き込むことができる必要があります。しかし、私は何かを無視するか、または日付が週末にあるときにエラーを与える必要があります。日付は今日から2日間

答えて

1

がここ

このコードを試してみてくださいではない場合+私は上のユーザ入力された日付が週末かではなく、(+日付は今日から2日間ではない場合)をチェックchange機能

$("#datepicker").datepicker({ 
minDate : 2, 
beforeShowDay: $.datepicker.noWeekends 
}).on("change", function(e) { 
var curDate = $(this).datepicker("getDate"); 
var minDate = $("#datepicker").datepicker("option", "minDate"); 
var maxDate = new Date(new Date().setDate(new Date().getDate() + minDate)); 
var datee=(this.value, curDate)>=maxDate?(this.value, curDate):null; 
    if(datee!==null){ 
      var day = datee.getDay(); 
      if (day==6||day==0) { 
       alert("invalid date"); 
       this.value=""; 
      } 
    } 
    else{ 
      alert("invalid date"); 
      this.value=""; 
    } 
    }); 

$("#datepicker").datepicker({ 
 
minDate : 2, 
 
beforeShowDay: $.datepicker.noWeekends 
 
}).on("change", function(e) { 
 
var curDate = $(this).datepicker("getDate"); 
 
var minDate = $("#datepicker").datepicker("option", "minDate"); 
 
var maxDate = new Date(new Date().setDate(new Date().getDate() + minDate)); 
 
var datee=(this.value, curDate)>=maxDate?(this.value, curDate):null; 
 
if(datee!==null){ 
 
     var day = datee.getDay(); 
 
     if (day==6||day==0) { 
 
      alert("invalid date"); 
 
      this.value=""; 
 
     } 
 
} 
 
else{ 
 
     alert("invalid date"); 
 
     this.value=""; 
 
} 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> 
 
<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/smoothness/jquery-ui.css"> 
 
<div class="block"> 
 
    <input id="datepicker" type="text" /> 
 
</div>

+0

ありがとうございました!それはworkeddd – namzaG

+0

あなたは歓迎です:)ハッピーコーディング..! – Amal

0
function checkDate(){ 

    var a = document.getElementById("startdatecontract").value; 
    var dates = a.split("-"); 
    a = dates[1]+'/'+dates[0]+'/'+dates[2]; 
    var d = new Date(); 

    if((d.getMonth() + 1)<=9) 
    { 
     var today = '0'+(d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear(); 
    } 
    else 
    { 
     var today=(d.getMonth() + 1) + '/' + d.getDate() + '/' + d.getFullYear(); 
    } 
    today=today.toString(); 
    a = new Date(a).getTime(); 
    today = new Date(today).getTime(); 

    if (a < today) 
    { 
     $("#startdatecontract").val(""); 
     alert("Availability date should not be past date."); 
     document.getElementById("startdatecontract").value = ""; 
    } 

} 
+0

時間のThnx;) – namzaG

関連する問題