๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Lect & Tip/bootstrap

๋ถ€ํŠธ์ŠคํŠธ๋žฉ ๋‚ ์งœ์„ ํƒ ํผ bootstrap 4.3 datepicker

by ๋‚ฏ์„ ๊ณต๊ฐ„2019 2019. 7. 25.

โœˆ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3 ๋‚ ์งœ ์„ ํƒ ํผ: ๊ฐ„ํŽธํ•œ ๋ฐ์ดํ„ฐ ํ”ผ์ปค ์‚ฌ์šฉํ•˜๊ธฐ

์„œ๋ก 

๋ถ€ํŠธ์ŠคํŠธ๋žฉ์€ ์›น ๊ฐœ๋ฐœ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ›Œ๋ฅญํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๋“œ๋กญ๋‹ค์šด์ด๋‚˜ ๋ฐ์ดํ„ฐ ํ”ผ์ปค์™€ ๊ฐ™์€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์‰ฝ๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ํฐ ์žฅ์ ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋ฒ„์ „ ์—…๊ทธ๋ ˆ์ด๋“œ ๊ณผ์ •์—์„œ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ํฌ์ŠคํŒ…์—์„œ๋Š” ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด์„œ ๋งˆ์ฃผํ•  ์ˆ˜ ์žˆ๋Š” ์Šคํƒ€์ผ ๊ด€๋ จ ์ด์Šˆ์™€ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ๋‚ ์งœ ์„ ํƒ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํ”ผ์ปค ๊ตฌํ˜„์— ์ค‘์ ์„ ๋‘˜ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3 ์—…๊ทธ๋ ˆ์ด๋“œ์˜ ์Šคํƒ€์ผ ๋ณ€ํ™”

๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด ๊ธฐ์กด์˜ ์Šคํƒ€์ผ์ด ์กฐ๊ธˆ ํํŠธ๋Ÿฌ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์ค‘์—์„œ๋„ ํŠนํžˆ ๋‚ ์งœ ์„ ํƒ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํ”ผ์ปค์˜ ์Šคํƒ€์ผ์ด ์˜ˆ์ „๊ณผ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋”์šฑ์ด ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์—์„œ๋Š” ๊ธ€๋ฆฌํ”ผ์ฝ˜์„ ๋” ์ด์ƒ ์ง€์›ํ•˜์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์—, ๊ธฐ์กด์˜ ์•„์ด์ฝ˜ ๋Œ€์‹ ์— ์ƒˆ๋กœ์šด ๋ฐฉ์‹์œผ๋กœ ์•„์ด์ฝ˜์„ ์ ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚ ์งœ ์„ ํƒ์„ ์œ„ํ•œ ๋ฐ์ดํ„ฐ ํ”ผ์ปค ๊ตฌํ˜„

์ด์ œ ๊ธฐ์กด์˜ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ ๋ฐ์ดํ„ฐ ํ”ผ์ปค๋ฅผ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์—์„œ๋„ ์›ํ™œํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ์ด๋ฅผ ์œ„ํ•œ HTML ๋งˆํฌ์—… ์˜ˆ์‹œ์ž…๋‹ˆ๋‹ค.

<li class="datePicker2">
  <span class="input-group date">
    <input type="text" class="form-control">
    <span class="input-group-append">
      <span class="input-group-text">
        <i class="datePicker-calendar"></i>
      </span>
    </span>
  </span>
</li>

์ด์ „๊ณผ ๋‹ค๋ฅด๊ฒŒ input-group-addon ๋Œ€์‹  input-group-append๋ฅผ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, ์•„์ด์ฝ˜ ๋Œ€์‹ ์— ์ด๋ฏธ์ง€ ์บ˜๋ฆฐ๋”๋ฅผ ์ ์šฉํ•˜๊ธฐ ์œ„ํ•ด <i> ํƒœ๊ทธ ๋‚ด๋ถ€์˜ ํด๋ž˜์Šค๋ฅผ ์กฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

์Šคํƒ€์ผ๋ง ๋ณ€๊ฒฝ์„ ์œ„ํ•œ CSS ์ฝ”๋“œ

๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์—์„œ์˜ ์Šคํƒ€์ผ ๋ณ€ํ™”์— ๋งž๊ฒŒ ์•„๋ž˜์™€ ๊ฐ™์ด CSS ์ฝ”๋“œ๋ฅผ ์กฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

/* datepicker */
.input-group-addon, .input-group-text {
  border-left: 0 none;
  padding: 4px 9px 4px 9px;
}

.input-group-addon .glyphicon-calendar:before,
.input-group-text .datePicker-calendar:before {
  content: " ";
  background: url(/assets/images/buttons/btn_calendar.png) center center no-repeat;
  width: 18px;
  height: 18px;
  display: block;
  overflow: hidden;
}

์œ„์˜ ์ฝ”๋“œ์—์„œ ์ฃผ๋ชฉํ•  ๋ถ€๋ถ„์€ ๋ฐฑ๊ทธ๋ผ์šด๋“œ ์ด๋ฏธ์ง€๋ฅผ ํ™œ์šฉํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์บ˜๋ฆฐ๋” ์•„์ด์ฝ˜์€ ๋” ์ด์ƒ ๊ธ€๋ฆฌํ”ผ์ฝ˜ ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ , ์ƒˆ๋กœ์šด ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค์–ด ์•„์ด์ฝ˜์„ ์ ์šฉํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋งˆ๋ฌด๋ฆฌ

๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๋ฉด์„œ ๊ธฐ์กด์˜ ์Šคํƒ€์ผ์ด ๋ณ€๊ฒฝ๋  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋ฐ์ดํ„ฐ ํ”ผ์ปค ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ์‚ดํŽด๋ณด์•˜์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ์•„์ด์ฝ˜ ์ ์šฉ๊ณผ ์Šคํƒ€์ผ ์กฐ์ •์„ ํ†ตํ•ด ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์˜ ์—…๋ฐ์ดํŠธ์—๋„ ์›ํ™œํ•˜๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๋” ๋‚˜์€ ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ์œ„ํ•ด ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3์˜ ๊ธฐ๋Šฅ์„ ์ตœ๋Œ€ํ•œ ํ™œ์šฉํ•ด๋ณด์„ธ์š”.

์ฃผ์š” ๋‚ด์šฉ ์š”์•ฝ

  • ๋ถ€ํŠธ์ŠคํŠธ๋žฉ 4.3 ์—…๊ทธ๋ ˆ์ด๋“œ ์‹œ ์Šคํƒ€์ผ ๋ณ€ํ™” ์ฃผ์˜ ํ•„์š”
  • ๋‚ ์งœ ์„ ํƒ ๋ฐ์ดํ„ฐ ํ”ผ์ปค ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ์†Œ๊ฐœ
  • ์ƒˆ๋กœ์šด ์•„์ด์ฝ˜ ์ ์šฉ๊ณผ ์Šคํƒ€์ผ๋ง ๋ณ€๊ฒฝ์„ ์œ„ํ•œ CSS ์ฝ”๋“œ ์ œ์‹œ

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€