2010-12-11 5 views
2

calendarextender와 One Label이있는 두 개의 텍스트 상자가 있습니다. 첫 번째 텍스트 상자는 시작 날짜를 나타내며 두 ​​번째 텍스트 상자는 종료 날짜를 나타냅니다. 레이블은 일 남기기 수를 나타냅니다.캘린더 Extender에서 이전 날짜를 비활성화하는 방법 클라이언트 사이드 스크립트 또는 서버 사이드 스크립트 사용

내가 가진 문제는 내가 종료 날짜를 선택하면 모든 날짜를 사용하지 않으려는 경우 클라이언트 측 스크립트 또는 서버 측 스크립트 중 하나를 사용하여 시작 날짜 이전 ... 하지만 시작 날짜와 종료 날짜를 (라벨)에 저장하십시오. NO.OF 일이 항목은 서버 측 스크립트 만 필요합니다.

예 : 시작 날짜가 2010년 11월 12일과 종료 날짜는 헤아 렸어요 일 휴가가 4

사람이 도와 주실 것입니다 14-12-2010입니다 ...... 내가 '

을 제한하는 논리를 수행 : Asp.net의 새로운 m ........

답변

0

실제로 아약스 달력 확장을 사용한 적이 있지만 내가 그렇게 여기에 몇 가지를 읽어은 샷입니다 아마도 서버 측 날짜가 가장 쉬울 것입니다. 그러나 필자가 아는 한 CalendarExtender는 서버 측 이벤트를 허용하지 않습니다. 그러나 숨겨진 asp : 버튼과 숨겨진 필드를 페이지에 추가하고 첫 번째 CalendarExtender에 이벤트 OnClientDateSelectionChanged을 사용하여 날짜를 저장하고 코드 숨김 메소드를 호출하는 버튼에 클릭을 가짜로 만듭니다.

function dateClickEvent(sender, args) 
{  
    document.getElementById('MyHiddenField').value = sender.get_selectedDate(); 
    (document.getElementById('HiddenDateBtn')).click();  
} 

이 같은 버튼과 필드 인 무언가에 대한 마크 업 :

<asp:HiddenField ID="MyHiddenField" runat="server" />  
    <asp:Button ID="HiddenDateBtn" runat="server" Text="Click" Visible="false" 
style="display:none" OnClick="HiddenDateBtn_Click" /> 

당신이 다음 RangeValidator과 ValidatorCalloutExtender를 사용하는 경우 코드 숨김에서 두 번째 기간 연장의 범위 을 설정할 수 있습니다 . 같은

//In your code-behind 
protected void HiddenDateBtn_Click(object sender, EventArgs e) 
{ 
    string firstDate = MyHiddenField.Value; 
    SecondDateRangeValidator.MinimumValue = firstDate; 
} 

그리고 발리에 .ASPX 코드가 있어야한다 뭔가 :이 코드를 자신을 시도하지 않은

<asp:RangeValidator ID="SecondDateRangeValidator" runat="server" 
       ControlToValidate="SecondDateTextBox" ErrorMessage="RangeValidator" 
       Type="Date"> 
</asp:RangeValidator> 
<ajaxToolkit:ValidatorCalloutExtender ID="SecondDateRangeValidator_ValidatorCalloutExtender" 
       runat="server" Enabled="True" TargetControlID="SecondDateRangeValidator"> 
</ajaxToolkit:ValidatorCalloutExtender> 

는 :) 그냥 몇 가지 인터넷 검색 및 읽기 후 함께 넣어. 잘하면 도움이됩니다.

관련 문제