datepicker 문의드립니다. (주말만선택 or 평일비활성) 채택완료
마일드스카이
4년 전
조회 3,306
예약게시판에서 사용중인데요.
평일을 비활성화하고 토,일만 선택할 수 있게 하고 싶은데
잘 안됩니다... 구글링으로 찾아봐도 제가 원하는건 잘 안보이네요..
아래는 제 datepicker.php 소스입니다.
// 주말만선택코드 ==> 요부분은 구글로 찾아서 넣어봤는데
잘 작동안해서요 ㅠㅠ
도움부탁드립니다.
</p>
<p><?php
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>
<p>add_stylesheet('<link type="text/css" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css" rel="stylesheet" />', 0);
add_stylesheet('<link type="text/css" href="'.G5_PLUGIN_URL.'/jquery-ui/style.css">', 0);</p>
<p>?></p>
<p><script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"></script>
<script></p>
<p>
// 주말만선택코드
$(function() {</p>
<p> $('#datepicker').datepicker({
dateFormat: "yy-mm-dd",
regional: "ko",
beforeShowDay: function(date){
var day = date.getDay();
return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5)];
}
});
});</p>
<p>$(function(){
// 날짜지정
var disabledDays = ["2021-5-19"];
// 특정일선택막기
function disableAllTheseDays(date) {
var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
for (i = 1; i < disabledDays.length; i++) {
if($.inArray(y + '-' +(m+1) + '-' + d,disabledDays) != -1) {
return [false];
}
}
return [true];
}
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: disableAllTheseDays
});
});</p>
<p>jQuery(function($){
$.datepicker.regional["ko"] = {
closeText: "닫기",
prevText: "이전달",
nextText: "다음달",
currentText: "오늘",
monthNames: ["1월(JAN)","2월(FEB)","3월(MAR)","4월(APR)","5월(MAY)","6월(JUN)", "7월(JUL)","8월(AUG)","9월(SEP)","10월(OCT)","11월(NOV)","12월(DEC)"],
monthNamesShort: ["1월","2월","3월","4월","5월","6월", "7월","8월","9월","10월","11월","12월"],
dayNames: ["일","월","화","수","목","금","토"],
dayNamesShort: ["일","월","화","수","목","금","토"],
dayNamesMin: ["일","월","화","수","목","금","토"],
weekHeader: "Wk",
dateFormat: "yymmdd",
firstDay: 0,
isRTL: false,
showMonthAfterYear: true,
yearSuffix: ""
};
$.datepicker.setDefaults($.datepicker.regional["ko"]);
});
</script>
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
4년 전
</p>
<p> </p>
<p><?php</p>
<p>if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>
<p>add_stylesheet('<link type="text/css" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/themes/base/jquery-ui.css" rel="stylesheet" />', 0);</p>
<p>add_stylesheet('<link type="text/css" href="'.G5_PLUGIN_URL.'/jquery-ui/style.css">', 0);</p>
<p>?></p>
<p><script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.8.4/jquery-ui.min.js"></script></p>
<p><script></p>
<p>jQuery(function($){</p>
<p> </p>
<p> $('#datepicker').datepicker({ </p>
<p> dateFormat: "yy-mm-dd",</p>
<p> regional: "ko",</p>
<p> beforeShowDay: function(date){</p>
<p> var day = date.getDay();</p>
<p> return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5)];</p>
<p> } </p>
<p> }); </p>
<p> </p>
<p> // 날짜지정</p>
<p> var disabledDays = ["2021-5-19"];</p>
<p> // 특정일선택막기</p>
<p> function disableAllTheseDays(date) {</p>
<p> var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();</p>
<p> for (i = 1; i < disabledDays.length; i++) {</p>
<p> if($.inArray(y + '-' +(m+1) + '-' + d,disabledDays) != -1) {</p>
<p> return [false];</p>
<p> }</p>
<p> }</p>
<p> return [true];</p>
<p> }</p>
<p> $("#datepicker").datepicker({</p>
<p> changeMonth: true,</p>
<p> changeYear: true,</p>
<p> dateFormat: "yy-mm-dd",</p>
<p> showButtonPanel: true,</p>
<p> yearRange: "c-99:c+99",</p>
<p> minDate: "+0d;",</p>
<p> maxDate: "+365d;",</p>
<p> beforeShowDay: disableAllTheseDays</p>
<p> });</p>
<p>
</p>
<p> $.datepicker.regional["ko"] = {</p>
<p> closeText: "닫기",</p>
<p> prevText: "이전달",</p>
<p> nextText: "다음달",</p>
<p> currentText: "오늘",</p>
<p> monthNames: ["1월(JAN)","2월(FEB)","3월(MAR)","4월(APR)","5월(MAY)","6월(JUN)", "7월(JUL)","8월(AUG)","9월(SEP)","10월(OCT)","11월(NOV)","12월(DEC)"],</p>
<p> monthNamesShort: ["1월","2월","3월","4월","5월","6월", "7월","8월","9월","10월","11월","12월"],</p>
<p> dayNames: ["일","월","화","수","목","금","토"],</p>
<p> dayNamesShort: ["일","월","화","수","목","금","토"],</p>
<p> dayNamesMin: ["일","월","화","수","목","금","토"],</p>
<p> weekHeader: "Wk",</p>
<p> dateFormat: "yymmdd",</p>
<p> firstDay: 0,</p>
<p> isRTL: false,</p>
<p> showMonthAfterYear: true,</p>
<p> yearSuffix: ""</p>
<p> };</p>
<p> $.datepicker.setDefaults($.datepicker.regional["ko"]);</p>
<p>})</p>
<p></script></p>
<p>
</p>
<p><p>Date: <input type="text" id="datepicker"></p></p>
<p> </p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 9개
�
마일드스카이
4년 전
P
Phillips
4년 전
전체소스를 주실레요.
제가해본결과 제가드린소스는 잘됩니다.
제가해본결과 제가드린소스는 잘됩니다.
�
마일드스카이
4년 전
전체소스는 어떤거인가요?
plugin폴더에 jquery-ui폴더 안에 datepicker.php밖에 없네요.
게시판스킨이 있어야 할까요?
plugin폴더에 jquery-ui폴더 안에 datepicker.php밖에 없네요.
게시판스킨이 있어야 할까요?
P
Phillips
4년 전
url 줘보세요.
P
Phillips
4년 전
$('#datepicker') 이부분을
$("#date_wr_1") 이걸로 싹 변경하세요.
그리고
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: disableAllTheseDays
});
이부분을
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: function(date){
var day = date.getDay();
return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5)];
}
});
이렇게 바꿔주세요.
$("#date_wr_1") 이걸로 싹 변경하세요.
그리고
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: disableAllTheseDays
});
이부분을
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: function(date){
var day = date.getDay();
return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5)];
}
});
이렇게 바꿔주세요.
�
마일드스카이
4년 전
헉.. 이제 잘 됩니다ㅎㅎ
필립스님 고맙습니다 꾸벅(__)
필립스님 고맙습니다 꾸벅(__)
P
Phillips
4년 전
채택부탁드려요 ㅎ
�
마일드스카이
4년 전
채택 당연합죠! ^^
아참 그런데 이미 지난날짜는 원래 비활성화였지만 지금은 지난날짜도 활성화되어 있는데 이건 어떻게 고치나요? 안고쳐도 상관은 없는데 보기가 좀 그래서요ㅎㅎ
아참 그런데 이미 지난날짜는 원래 비활성화였지만 지금은 지난날짜도 활성화되어 있는데 이건 어떻게 고치나요? 안고쳐도 상관은 없는데 보기가 좀 그래서요ㅎㅎ
P
Phillips
4년 전
$("#date_wr_1").datepicker({
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: function(date){
var day = date.getDay();
return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5 && disableAllTheseDays(date))];
}
});
changeMonth: true,
changeYear: true,
dateFormat: "yy-mm-dd",
showButtonPanel: true,
yearRange: "c-99:c+99",
minDate: "+0d;",
maxDate: "+365d;",
beforeShowDay: function(date){
var day = date.getDay();
return [(day != 1 && day != 2 && day != 3 && day != 4 && day != 5 && disableAllTheseDays(date))];
}
});
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
근데 여전히 작동 안되요ㅡ.ㅜ