메뉴 건너뛰기

조회 수 7320 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
<script type="text/javascript" src="http://code.jquery.com/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 
    $("#start_year, #start_month, #end_year, #end_month").change(function() {
         
        var checkNum = 2;//3개월이면 2로 셋팅
         
        //선택된 값을 가져온다.
        var startYear = $("#start_year option:selected").val();
        var startMonth = $("#start_month option:selected").val();
        var endYear = $("#end_year option:selected").val();
        var endMonth = $("#end_month option:selected").val();
        //계산을 위해 명시적으로 형변환
        var startYearNum = Number(startYear);
        var startMonthNum = Number(startMonth);
        var endYearNum = Number(endYear);
        var endMonthNum = Number(endMonth);
         
        //일단 차이를 재서 위에서 정한 월이 넘어가는지 확인  
        var result = ((endYearNum*12)+endMonthNum) - ((startYearNum*12)+startMonthNum);
                 
        if(result>checkNum){
             
            alert("날짜 검색 범위는 "+(checkNum+1)+"개월 입니다.");
             
            if(endMonthNum<=checkNum){
                startYearNum = endYearNum-1;
                startMonthNum = 12-(checkNum-endMonthNum)
            }else{
                startYearNum = endYearNum;
                startMonthNum = endMonthNum-checkNum;
            }
             
            $("#start_year").val(startYearNum).attr("selected", "selected");
            $("#start_month").val(startMonthNum).attr("selected", "selected");
             
        };
         
    });
      
});
</script>
 
<select id="start_year" name="start_year">
    <option value="2015" >2015</option>
    <option value="2014" >2014</option>
    <option value="2013" >2013</option>
</select>
<select id="start_month" name="start_month">
    <option value="1" >1</option>
    <option value="2" >2</option>
    <option value="3" >3</option>
    <option value="4" >4</option>
    <option value="5" >5</option>
    <option value="6" >6</option>
    <option value="7" >7</option>
    <option value="8" >8</option>
    <option value="9" >9</option>
    <option value="10" >10</option>
    <option value="11" >11</option>
    <option value="12" >12</option>
</select> ~
<select id="end_year" name="end_year">
    <option value="2015" >2015</option>
    <option value="2014" >2014</option>
    <option value="2013" >2013</option>
</select>
<select id="end_month" name="end_month">
    <option value="1" >1</option>
    <option value="2" >2</option>
    <option value="3" >3</option>
    <option value="4" >4</option>
    <option value="5" >5</option>
    <option value="6" >6</option>
    <option value="7" >7</option>
    <option value="8" >8</option>
    <option value="9" >9</option>
    <option value="10" >10</option>
    <option value="11" >11</option>
    <option value="12" >12</option>
</select> 
<input type="image" src="/images/button/search.gif" alt="검색" class="img"/>

제목을 뭘로 정해야 할지 몰라서 그냥 막 적었습니다.
일반적으로 어떠한 데이터를 검색할때 DB에 부담을 줄이고 속도를 빠르게 하기 위해 검색시에 날짜 범위에 제한을 걸어 검색의 속도를 증가 시킵니다.
3개월 범위만 검색 가능 하다거나 이런식으로요.


아래 소스를 확인하시면 년도에 12개월을 곱해서 계산 했습니다. ㅋㅋ




List of Articles
번호 제목 날짜 조회 수
119 검토하기: jQuery를 이용하여 form 처리하기 2017.03.02 7513
118 jquery 이용한 필수입력체크(input form) 2017.03.02 10559
117 jQuery 실행패턴 2017.03.02 6770
116 jQuery 입문: form 데이터 유효성 검사 2017.03.02 11799
115 예제로 만나보는 제이쿼리 - 비동기 파일업로드 file 2017.03.06 7344
114 파일 업로드 방법, 이미지 파일 업로드 예제 소스 2017.03.06 9028
113 Ajax 파일 업로드 샘플 코드 2017.03.11 7791
112 jquery를 활용한 입력폼 초기화하기 2017.03.27 8703
111 jquery css div, li 리스트 선택한 메뉴 변경 출처: http://okkks.tistory.com/1062 [이건없지] file 2017.07.05 5796
110 jquery 체크박스 배열 처리. 변수 하나에 담기. 2018.07.04 4666
109 jQuery 유효성 검사 2018.07.04 3362
108 jQuery selectBox 컨트롤. 2018.07.25 2558
107 jquery - select option 선택값 가져오기 2018.09.06 5330
106 jQuery 폼 입력값 체크 예제 2018.09.06 2098
105 입력폼에 입력되는 값의 유효성 체크하기 두번째 file 2018.09.06 1835
104 페이지 이동 제어 - href, replace, pushState() 2018.09.06 2620
103 외부 파일 드래그 드롭 구현 file 2018.09.06 1678
102 드래그 & 드랍 구현 - on()[이벤트리스너] file 2018.09.06 2891
101 [jQuery] 확인 창(confirm), 페이지 이동(location.replace) 2018.09.06 2652
100 [jQuery] input 박스에 maxlength 만큼 입력했을 때 자동으로 다음 박스로 이동하기 2018.09.06 1819
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved