재민콩
맨땅에 코딩
재민콩
전체 방문자
오늘
어제
  • 분류 전체보기 (41)
    • Project (6)
      • 오늘은 무엇을 먹을까? (6)
    • Frontend (11)
      • HTML (1)
      • CSS (1)
      • Javascript (5)
      • Vue (1)
      • PWA (2)
      • Node.js (1)
    • Backend (4)
      • Django (3)
      • Docker (1)
    • Development Tools (3)
      • Visual Studio Code (2)
      • Eclipse (1)
    • Reference Site (3)
    • 정보처리기사 (12)
      • 필기 (11)
      • 실기 (1)
    • 코딩테스트 (0)
    • 기타 (1)

인기 글

최근 댓글

최근 글

hELLO · Designed By 정상우.
재민콩

맨땅에 코딩

[Javascript] Daterangepicker Custom
Frontend/Javascript

[Javascript] Daterangepicker Custom

2022. 11. 7. 23:01
728x90

안녕하세요🙏 개발자 재민콩입니다.

 

오늘은 daterangepicker 자주사용하는 옵션과, 사용법에 대해 알아보겠습니다.

 

1. daterangepicker 설치

npm i daterangepicker

 

2. JQuery를 사용한 daterangepicker 사용법

// 오늘 날짜 데이터
const d = new Date();
const day = d.getDate();
const month = d.getMonth();

$('.custom-daterangepicker').daterangepicker({
  // datarangepicker은 기본값으로 자동으로 오늘 날짜를 삽입한다.
  // 값을 비우고 focus가 없어져도 데이터가 오늘 날짜로 입력되면 해제하기 위해 autoUpdateInput: false 사용
  autoUpdateInput: false,
  // 시작일 기본값을 한 달 전으로 고정
  startDate: new Date(new Date().setMonth(month - 1)).toLocaleDateString(),
  // 종료일 기본값을 오늘로 고정
  endDate: new Date(),
  locale: {
    format: 'YYYY-MM-DD',
    separator: ' ~ ',
    applyLabel: '확인',
    cancelLabel: '취소',
  },
  // 사용자 편의성을 위해 사용 오늘, 7일 전, 30일 전, Custom Range(사용자 조작으로 설정)
  ranges: {
    오늘: [new Date(), new Date()],
    '7일 전': [new Date(new Date().setDate(day - 7)).toLocaleDateString(), new Date()],
    '30일 전': [new Date(new Date().setMonth(month - 1)).toLocaleDateString(), new Date()],
  },
});

// autoUpdateInput을 false로 설정하여 날짜 선택 이벤트가 없으므로 포맷에 맞는 이벤트 추가
$('.custom-daterangepicker').on('apply.daterangepicker', function (ev, picker) {
  $('.custom-daterangepicker').val(picker.startDate.format('YYYY-MM-DD') + ' ~ ' + picker.endDate.format('YYYY-MM-DD'));
});
// Custom Range 텍스트를 맞춤으로 변경하기 위해 사용
$('.custom-daterangepicker').on('focus', function () {
  $('[data-range-key="Custom Range"]').text('맞춤');
});

 

3. 적용화면

 

4. Reference

  • Daterangepicker
728x90
저작자표시 (새창열림)

'Frontend > Javascript' 카테고리의 다른 글

[Javascript] e.stopPropagation() vs e.preventDefault()  (0) 2025.03.04
[Javascript] Html video currentTime 수정 불가 해결  (10) 2023.03.07
[Javascript] file drag&drop 제어(dragenter, dragleave, dragover, drop)  (0) 2022.11.01
[Javascript] 배열(Array) 관련 함수 사용법(push, pop, shift, unshift, splice)  (0) 2022.10.31
    'Frontend/Javascript' 카테고리의 다른 글
    • [Javascript] e.stopPropagation() vs e.preventDefault()
    • [Javascript] Html video currentTime 수정 불가 해결
    • [Javascript] file drag&drop 제어(dragenter, dragleave, dragover, drop)
    • [Javascript] 배열(Array) 관련 함수 사용법(push, pop, shift, unshift, splice)
    재민콩
    재민콩
    안녕하세요🙌 개발자 재민콩 블로그입니다.

    티스토리툴바