2010-12-07 4 views
1

시작일과 종료일을 입력 할 수있는 입력란이 2 개 있습니다. 시작일이 종료일보다 빠를 수 있는지 확인해야합니다. 다음 코드는 코드가 아니라는 것을 확인합니다. 데이트 피커 컨트롤의 onselect 이벤트에 연결할 때 발사되는 것 같아요. 누군가 내가 뭘 잘못하고 있는지 말해 줄 수 있습니까?jquery datepicker onselect가 실행되지 않음

<script language="javascript" type="text/javascript"> 
     $(document).ready(function() { 
      $(".date").datepicker({ 
      onSelect:function(dateText,inst){ 

      var startDate=new Date($("#_createDateFromInput").val()); 
      var endDate=new Date($("#_createDateToInput").val()); 
      if(startDate!=""&&endDate!="") 
      { 
       if(startDate>endDate) 
       { 
        alert("End date cannot be earlier than start date"); 
       } 
      } 

      } 

     });}); 
    </script> 

감사합니다. 위의 마크 업이

는 (이 asp.net에) :

<label>Date From</label> 
<input class="date" runat="server" id="_createDateFromInput" /> 
<label id="to">To</label> 
<input class="date" runat="server" id="_createDateToInput" /> 

엘 Ronnoco 내가 뭔가에 고정되고 생각했다 ... 나는 RUNAT = "서버"태그를 제거 할 때주의 사항 나는 심지어 화재를 낼 수있다 ... 그러나 지금 나는 또 다른 문제에 직면 해 포스트 백 (즉, 사용자가 최종적으로 제출할 때) 값을 검색한다. 아무도 아이디어가 없다?

+0

'_createDateFromInput' 및'_createDateToInput' 요소에 대한 마크 업은 무엇입니까? startDate 및 endDate 변수가 올바르게 채워지지 않는다고 생각합니다. –

+0

<입력 클래스 = "날짜"RUNAT = "서버"ID <= "날짜"RUNAT = "서버"ID = "_ createDateFromInput"/ 입력 클래스>에서 날짜 = "_ createDateToInput"/> – tmt1982

+0

El Ronnoco u가 맞았습니다. 내 쿼리에서 찾은 것을 추가했습니다. 감사합니다! – tmt1982

답변

0

이것을 달성하는 더 간단한 방법은 사용자가 endDate의 이전 날짜를 선택할 수 없게하는 것입니다.

이 단순히 jQuery를 UI 예제 페이지에서

$("#startDate").datepicker({ 
    onSelect:function(dateText,inst){ 
     $("#endDate").datepicker("option", "minDate", new Date(dateText)); 
    } 
}); 
0

나는이 코드를 사용 날짜 선택기 플러그인의 minDate 옵션을 사용하여 수행 할 수 있습니다, http://jqueryui.com/demos/datepicker/#event-search

기본적으로 2 개 입력을 취 그들에게 datepickers한다 onselect는 마음가짐과 최대 날짜를 제한합니다. 그것은 아주 똑똑한 코드입니다. 당신의 input.I 당신이 불통이 속성을 runat="server" 가진 어떤 이유로 그 일을 할 수 있었다 쓴 것을 많이 사용되는 모든

$(function() { 
    var dates = $("#from, #to").datepicker({ 
     defaultDate: "+1w", 
     changeMonth: true, 
     numberOfMonths: 3, 
     onSelect: function(selectedDate) { 
      var option = this.id == "from" ? "minDate" : "maxDate", 
       instance = $(this).data("datepicker"); 
       date = $.datepicker.parseDate(
        instance.settings.dateFormat || 
        $.datepicker._defaults.dateFormat, 
        selectedDate, instance.settings); 
      dates.not(this).datepicker("option", option, date); 
     } 
    }); 
}); 
0

들 덕분에이 jquery.I에 대한 모든 종류의 문제가 있었다 원인 태그를 제거하고하십시오 .FrontPage 구문에 그 관심에 내재 요청 객체를 사용하여 액세스 : STARTDATE 해당 필드의 속성 이름 값입니다

request.form["startDate"].tostring(); 

합니다.

+0

옆에있는 "틱"또는 "확인"아이콘을 클릭하여이 대답을 "수락"으로 표시하는 것이 좋습니다. –