jQuery 날짜 / 시간 선택기 [닫기]


245

날짜와 시간을 모두 처리 할 수있는 괜찮은 jQuery 플러그인을 찾고있었습니다. 핵심 UI DatePicker는 훌륭하지만 불행히도 시간도 필요합니다.

DatePicker가 시간에 따라 작동하는 몇 가지 해킹을 발견했지만 모두 우아하지 않으며 Google은 멋진 것을 보여주지 않습니다.

사용 가능한 인터페이스가있는 단일 UI 컨트롤에서 날짜 및 시간을 선택하기위한 좋은 jQuery 플러그인이 있습니까?


내 예제가 약간 덜 혼란스럽고 사용자 친화적이라는 것이 확실합니다. 두 가지의 장단점이 있습니다.
Michael Stone

답변:


251

지금까지 가장 훌륭하고 간단한 DateTime 선택기 옵션은 http://trentrichardson.com/examples/timepicker/ 입니다.

jQuery UI Datepicker의 확장이므로 동일한 테마를 지원할뿐만 아니라 비슷한 방식으로 구문도 비슷하게 작동합니다. 이는 jQuery UI imo와 함께 패키지되어야합니다.


3
나는 이것을 사용하고 있었고 그것을 좋아합니다.
Sonny

3
나는 이것을 좋아하지만 여전히 매우 버그가 있습니다.
Alastair Pitts

11
"매우 버기"? 거의. 프로덕션 코드에서 사용하고 있으며 잠시 동안 있습니다. 또한 적극적으로 개발되었습니다.
Sonny

7
@Sonny : 프로덕션 환경에서 사용하는지 여부는 버그가 있는지 여부와 관계가 없습니다. Alastair가 노출 된 작업을하지 않기 때문에 버그를 보지 못했을 수도 있습니다. 다른 한편으로, 그는 자신의 주장에 대한 증거를 제시하지 않았기 때문에 너무 진지하게 받아들이려고하지 않습니다 ...
iconoclast

18
이 플러그인의 가장 큰 문제는 UI입니다. 왜 슬라이더를 사용하여 수평 슬라이더를 사용하여 시간을 입력하고 싶습니까? 그것은 나에게 매우 어색하고 느껴집니다. 슬라이더를 사용하여 여러 번 경험을 쌓았으므로 원하는 수에 도달 할 수 없었습니다 (반복적으로 조금씩 내려갑니다). 일반적으로 키보드는 정확한 숫자 값을 입력하는 가장 쉬운 방법입니다. 시각적 인 입력 방법을 원한다면 슬라이더가 아니라 시계가 보통 시간입니다. 구현하기는 어렵지만 실제로는 키보드 입력이 가능한 한 유용 할 수 있습니다.
iconoclast

46

@David, 추천 해 주셔서 감사합니다! @fluid_chelsea, 저는 프로토 타입 대신 jQuery를 사용하고 인터페이스가 많이 개선 된 Any + Time (TM) 버전 3.x를 방금 출시했습니다.

http://www.ama3.com/anytime/

문제가 있으면 내 웹 사이트의 댓글 링크를 통해 알려주십시오!


6
이제 Any + Time (TM) 버전 4.x를 사용할 수 있습니다! 새로운 릴리스는 TIME ZONES (다른 선택기에서 찾아보세요!)와 jQuery 선택기 / 체인, 쉽게 제거 (메모리 누수 방지) 및 기타 여러 개선 사항을 지원합니다. 차를 타서 문제가 있거나 제안이 있으면 내 웹 사이트의 댓글 페이지를 통해 알려주십시오.
Andrew M. Andrews III

4
Any + Time은 매우 매끄럽게 보입니다. 나는 그것을 좋아한다.
잭 피터슨

Rails 앱에서 몇 분 안에 AnyTime을 구현했습니다. 완벽하게 작동합니다.
Gwyn Morfey

JSF 앱에서 선택한 피커로 AnyTime 피커를 선택했습니다! 좋은 제품 주셔서 감사합니다, 좋은 일을 유지!
Arg

Any + Time은 모든 Any + Time 입력에 대해 UI에 새로운 숨겨진 div를 추가합니다. MSIE6를 지원해야하는 경우 Any + Time을 사용하지 마십시오!
Eduardo

14

필자가보기에 날짜와 시간은 사용자가 가장 유용하고 효율적으로 입력 할 수 있도록 두 개의 별도 입력 상자로 처리해야합니다. 사용자가 한 번에 하나의 항목을 입력하도록하는 것이 좋은 원칙입니다 (imho).

핵심 UI DatePicker 및 다음 시간 선택기를 사용합니다.

이것은 Google 캘린더에서 사용하는 것에서 영감을 얻은 것입니다.

jQuery timePicker :
예 : github의 http://labs.perifer.se/timedatepicker/
프로젝트 : https://github.com/perifer/timePicker

나는 모든 대안 중에서 가장 좋은 것으로 나타났습니다. 사용자는 빠르게 입력 할 수 있고 깔끔해 보이고 간단하며 특정 시간을 분 단위로 입력 할 수 있습니다.

추신 : 내 생각에 : 슬라이더 (일부 대체 시간 선택기가 사용)는 너무 많은 클릭을 가져오고 사용자의 마우스 정밀도가 필요합니다 (입력 속도가 느려짐).


핵심 UI DatePicker : jqueryui.com/demos/datepicker
Magne

이것은 해당 필드에 대한 C # MVC의 모델 바인딩 이점을
Serj Sagan

13

날짜 선택기에 대한 나의 가장 좋은 경험은 프로토 타입 기반 AnyTime 입니다. 나는 그것이 jQuery가 아니라는 것을 알고 있지만 여전히 타협의 가치가 있습니다. 나는 프로토 타입이 전혀 없다는 것을 알고 있으며, 여전히 쉽게 작업 할 수 있습니다.

내가 찾은 한 가지주의 사항 : 일부 브라우저에서는 호환되지 않습니다. 즉, Chrome에서 최신 버전의 프로토 타입에서는 작동하지 않았습니다.


1
프로토 타입을 사용할 수 있다면 이것이 문제가되지는 않지만 불행히도 우리는이 응용 프로그램에 대한 jQuery를 고수했습니다.
Chelsea

7
그냥 업데이트-AnyTime 3은 이제 jQuery와 함께 작동합니다.
Jaxidian

나는 몇 달과 몇 달 동안 이것에 대해 생각하지 않았습니다. 그러나 내 개인 프로젝트는 약간의 업데이트를 원했고 jquery를 던질 준비가되었습니다. Any + Time의 모든 기능이 필요하지 않기 때문에 datepicker를 교체 할 것이라고 생각했으며 모든 jQuery를 사용할 수도 있다고 생각했습니다. 그리고 빵! 나는 이것을 만난다. 멋진 타이밍.
David Berger

나이 선택기 (<또는> 클릭)는 나에게 좋지 않습니다.
코더

7

여기에 정보를 추가하기 위해 The Fluid Project에는 많은 날짜 및 / 또는 시간 선택기를 개괄적으로 보여주는 훌륭한 위키 작성이 있습니다 .


4

나는 최근에 이것을 조사했지만 적절한 시간 선택기를 포함하는 적절한 날짜 선택기를 아직 찾지 못했습니다 . 내가 사용한 것은 eyecon의 멋진 DatePicker 였고 시간에 대한 두 가지 간단한 드롭 다운이있었습니다. 그래도 Timepickr.js 를 사용하고 싶었지만 정말 좋은 접근법처럼 보입니다.


3

나는 같은 문제에 부딪쳤다. 실제로 서버 측 프로그래밍을 사용하여 개발했지만 빠른 검색을 수행하여 도움을 요청했습니다.

괜찮아 보입니다. 소스를 너무 많이 보지 않았지만 순수한 JavaScript 인 것 같습니다.

보세요 :

http://www.rainforestnet.com/datetimepicker/datetimepicker.htm

데모 페이지 링크는 다음과 같습니다.

http://www.rainforestnet.com/datetimepicker/datetimepicker-demo.htm

행운을 빕니다


나는 이것을 몇 년 동안 사용 해왔다. 치아가 조금 오래 걸리지 만 작동합니다.
코더

1

이것은 사용자가 하나의 datetimepicker를 선택하고 datetime을 설정하고 다른 datetimepicker가 그 시간에 1 분을 추가하도록하는 데 사용하는 코드입니다.

맞춤형 약물 관리를 위해 이것이 필요했습니다 ....

어쨌든, 온라인에서 답변을 찾을 수 없으므로 다른 사람에게 도움이 될 수 있다고 생각했습니다 ...

(적어도 완전한 답변은 아닙니다)

60000이 추가되고 1 분이 추가됩니다. (60 * 1000 밀리 초)

$('.frdtPicker').datetimepicker({
        onClose: function(dateText, inst) {
            var endDateTextBox = $('.todtPicker');
            if (endDateTextBox.val() != '') {
                var testStartDate = new Date(dateText);
                var testEndDate = new Date(endDateTextBox.val());
                if (testStartDate > testEndDate) {

                    var testStartDate = new Date(dateText).getTime() + 60000;
                    var testStartDate2 = new Date(testStartDate); 

                    endDateTextBox.datetimepicker('setDate', (new Date(testStartDate2)));
                }
            }
            else {
                var testStartDate = new Date(dateText).getTime() + 60000;
                var testStartDate2 = new Date(testStartDate);
                endDateTextBox.datetimepicker('setDate', (new Date(testStartDate2)));
            }
            $('.frdtPicker').val(dateText); //endDateTextBox.val());

        },
        onSelect: function(selectedDateTime) {
            var start = $(this).datetimepicker('getDate');
            $('.todtPicker').datetimepicker('option', 'minDate', new Date(start.getTime()));
        }
    });


1

jQuery는 아니지만 JavaScript Date Time Picker 시간이있는 달력에는 잘 작동합니다 .

클릭 이벤트를 팝업으로 묶었습니다.

$(".arrival-date").click(function() {
    NewCssCal($(this).attr('id'), 'mmddyyyy', 'dropdown', true, 12);
});

1
링크를 업데이트했습니다. 링크가 이동되었습니다.
bigspotteddog

나는 그것을 다르게 호출했지만 (따라서 코드에서 인식하지 못하지만) 몇 년 동안 사용했습니다. 열대 우림이 치아에서 조금 길어 보이기 때문에 jquery의 DatePicker로 마이그레이션하고 있습니다.
코더

0

다음과 같은 기능을 하나 만듭니다.

function getTime()
{
    var date_obj = new Date();
    var date_obj_hours = date_obj.getHours();
    var date_obj_mins = date_obj.getMinutes();
    var date_obj_second = date_obj.getSeconds();

    var date_obj_time = "'"+date_obj_hours+":"+date_obj_mins+":"+date_obj_second+"'";
    return date_obj_time;
}

그런 다음 jQuery UI 날짜 선택기를 다음과 같이 사용합니다.

$("#selector").datepicker( "option", "dateFormat", "yy-mm-dd "+getTime()+"" );

그래서 나는 다음과 같은 가치를 얻습니다 : 2010-10-31 12:41:57


때때로 우리는 시간을 결정해야합니다 (getTime 함수를 사용하지 않음)
bungdito

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.