2009-09-24 5 views
26

ASP.NET 달력 컨트롤과 잘 어울리는 무료/오픈 소스 시간 선택기 컨트롤이 있습니까? 그것은 내가 사용했던 유일한 사람 때문에ASP.NET DateTime Picker

+3

jQuery UI를 보았습니까? 우수한 datetime picker가 있습니다. – Sebastian

+1

다음은 해당 선택 도구에 대한 링크입니다. http://milesich.com/timepicker/ –

+1

sebastian & john, jquery를 시도하지 않았습니다. 인터페이스가 멋지게, 나는 그것에게 시험을 줄 것이다. 다시 한 번 감사드립니다. – SoftwareGeek

답변

21

JQuery와 최고의 datepicker 이럴을 가지고에서 CalendarExtender을 건의 할 것입니다. 그것이 닷넷에만 적용되는 것은 아니지만 여전히 훌륭합니다.

HTML :

<input type="text" value="9/23/2009" style="width: 100px;" readonly="readonly" name="Date" id="Date" class="hasDatepicker"/> 

헤드 요소에서 다음과

<script src="../../Scripts/jquery-1.3.2.min.js" language="javascript" type="text/javascript"/> 
<script src="../../Scripts/jquery-ui-1.7.1.custom.min.js" type="text/javascript"/> 

간단한!

+1

+1 - 내가 사용하는 것입니다. – Martin

+5

@ Chuck-i는 해결책을 수락했지만 데이트 피커에 필요한 다음 인스턴스가 누락되었음을 알려줍니다. '$ ("# Date"). datepicker();' – SoftwareGeek

+16

내가 틀렸다면 저를 시정하십시오, 그러나이 jQuery 컨트롤은 "DateTime"의 "Time"부분을 지원하지 않습니다. 내가 잘못? 이 컨트롤이 Datepicker 인 것처럼 DateTime Picker가 어떤 모습인지 알 수 없습니다. – dyslexicanaboko

8
+1

이 툴킷을 사용하려고 한 마지막 때 나는 처음으로 커스터마이징/확장 할 필요가있었습니다. 소스 코드는 끔찍했다. 나는 그때 이후로 개선 되었으면 좋겠지 만, 내 경험 (그리고 Ext, YUI, Dojo 등의 Ajax 컨트롤 옵션이 풍부하다는 점)을 기반으로 전염병과 같은 전체 라이브러리를 피할 것입니다. –

+2

sshow, 캘린더에 ajaxcontroltoolkit을 사용하고 있지만 시간 구성 요소를 지원하지 않습니다 – SoftwareGeek

+1

MaskedEdit이 원하는 것을 제공 할 수 있습니까? http://www.ajaxcontroltoolkit.com/MaskedEdit/MaskedEdit.aspx – sshow

3

Basic Date Picker Lite

이것은 그들의 주력 제품의 무료 버전이지만, asp.net의 날짜 및 시간 선택기 기본 포함되어 있습니다.

29

질문에 대한 대답은 입니다. ASP.NET 달력 컨트롤과 잘 어울리는 좋은 무료/오픈 소스 시간 선택기 컨트롤이 있습니다.

ASP.NET Calendar 컨트롤은 html 테이블을 작성합니다.

HTML5 및 DOT.NET Framework 4.5를 사용하는 경우 ASP.NET TextBox 컨트롤을 대신 사용할 수 있으며 TextMode 속성을 "Date"또는 "Month"또는 "Week"또는 " 시간 "또는"DateTimeLocal "이거나 이 아닌 경우을 Chrome 또는 Firefox 또는 Internet Explorer를 사용하는 경우이 속성을"DateTime "으로 설정할 수도 있습니다.

그런 다음 Text 속성을 읽으면 TextBox에서 날짜, 시간, 월 또는 주를 문자열로 가져올 수 있습니다.

DOT.NET Framework 4.0 또는 이전 버전을 사용하는 경우 html5 입력 유형 = "날짜"또는 입력 유형 = "월"또는 입력 유형 = "주"또는 입력 유형 = "시간" 또는 입력 유형 = "datetime-local"이거나 이 아닌 경우이 Chrome 또는 Firefox 또는 Internet Explorer를 사용하는 경우 input type = "datetime"을 사용할 수도 있습니다.

사용자가 날짜 필드에 입력 한 정보가 서버 측 코드 (C# 또는 Visual Basic으로 작성)에 필요한 경우 서버에서이 요소를 실행하려고 시도 할 수 있습니다. runat="server"

또한이 요소에 ID를 지정하면 서버 측 코드에서 액세스 할 수 있습니다. 입력 날짜, 시간, 월 또는 주를 문자열로 가져 오려면 Value 속성을 읽습니다. 서버에서이 요소를 실행할 수없는 경우 input type = "date", "time"또는 "month"또는 "week"이외에 숨겨진 필드가 필요합니다. 제출 기능 (자바 스크립트로 작성)에서 숨김 필드의 값을 입력 유형 = "날짜"또는 "시간", "월"또는 "주"의 값으로 설정 한 다음 서버 측 코드, 숨겨진 필드의 Value 속성을 문자열로 읽습니다.

html의 숨겨진 필드 요소가 서버에서 실행될 수 있습니다.

희망이 있습니다.

+1

아주 좋은 해결책. 왜 아무도 실제로 다른 곳에 게시 한 이유가 궁금합니다. – Vikas

+1

이것이 직접 질문에 대답하는 것은 아니지만 가장 깨끗한 해결책입니다. 고마워. – sheppe

2

HTML 5 input type="date"과 다른 날짜 관련 입력 유형은 쉽게 구현할 수 있습니다.

좋아요, 조절기를 그다지 많이 스타일링 할 수는 없지만 doesn't work on every browser이지만, 모든 현대의 브라우저가이를 지원하고 장기간 사용하면 무거운 라이브러리를 포함하고 싶지 않은 경우 장기적으로는 아주 좋은 옵션이 될 수 있습니다. 모바일 장치에서 항상 좋은 결과를 거두십시오.

2

이것은 jquery가없는 해결책입니다.

는 웹폼에서 일정 및 텍스트 상자를 추가 -> 웹 양식 소스이 있습니다

<asp:Calendar ID="Calendar1" runat="server" OnSelectionChanged="DateChange"> 
</asp:Calendar> 
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> 

는 웹 양식 CS 파일의 방법을 만들기 :

protected void Page_Load(object sender, EventArgs e) 
    { 
     TextBox1.Text = DateTime.Today.ToShortDateString()+'.'; 
    } 

    protected void DateChange(object sender, EventArgs e) 
    { 
     TextBox1.Text = Calendar1.SelectedDate.ToShortDateString() + '.'; 
    } 

방법 DateChange이 달력 이벤트와 연결되어 인 selectionchanged. 모양은 다음과 같습니다. DatePicker Image