2014-10-20 7 views
0

이 코드를 사용하고 있지만 datepicker에서 날짜를 선택할 수 없습니다. 왜? 내가 몇 달을 바꿀 때 날짜를 선택할 수 있습니다. 나는 disableFunc을 사용하여 다음 3 일 및 일요일을 캘린더에서 비활성화합니다. 그것을 제거하면 disableFunc 날짜를 선택할 수 있습니다. 어떤 해결책?JavaScript에서 날짜를 선택할 수 없습니다.

Calendar.setup({ 
     inputField : '_dob', 
     ifFormat : '%m/%e/%y', 
     button : '_dob_trig', 
     align : 'Bl', 
     singleClick : true, 
     disableFunc: function(date) 
     { 
      var first_day = new Date(); 
      var second_day= new Date(); 
      var third_day= new Date(); 

      first_day.setDate(first_day.getDate()); 
      if(first_day.getDay()===0) 
      { 
       first_day.setDate(first_day.getDate()+1); 
      } 

      second_day.setDate(first_day.getDate()+1); 
      if(second_day.getDay()===0) 
      { 
       second_day.setDate(first_day.getDate()+2); 
      } 

      third_day.setDate(second_day.getDate()+1); 
      if(third_day.getDay()===0) 
      { 
       third_day.setDate(second_day.getDate()+2); 
      } 


      var flag1 = first_day.getDate()===date.getDate() && first_day.getMonth()===date.getMonth() && first_day.getYear()===date.getYear(); 
      var flag2 = second_day.getDate()===date.getDate() && second_day.getMonth()===date.getMonth() && second_day.getYear()===date.getYear(); 
      var flag3 = third_day.getDate()===date.getDate() && third_day.getMonth()===date.getMonth() && third_day.getYear()===date.getYear(); 

      if(date.getDay() === 0 || flag1 || flag2 || flag3) 
      { return true; } 

     } 
    }); 
+1

줄 단위로 문제를 해결하는 경우 예기치 않은 동작을 일으키는 줄은 무엇입니까? – roland

+0

'return true;'는 예기치 않은 동작을 유발하지만 그 이유는 무엇입니까? – HungryDB

답변

0

있어 솔루션 == 또는 ===를 사용하지 않는 것이 좋습니다. 비활성화 된 날짜에서 현재 날짜를 제거하려고했는데 정상적으로 작동합니다.

현재 날짜를 사용 중지하려면이 링크를 방문하여 지침을 따르십시오.

dynarch 팝업 달력에서 현재 날짜 사용 안 함

0

나는이 대답이 도움이 될 것이라고 생각합니다. 그런 다음 현재 날짜를 사용하지 않도록 설정하면

에만이 문제가 발생 -

Compare two dates with JavaScript

+0

[SO] 링크에서만 답변을 환영하지 않습니다. 설명을 해보십시오. 그리고 그 질문이 아주 비슷하다면, 질문은 복제 된 것처럼 닫을 수 있습니다. – fedorqui

관련 문제