셀렉트박스 선택시 경고창 스크립트를 어떻게 짜야할까요?

셀렉트박스 선택시 경고창 스크립트를 어떻게 짜야할까요?

QA

셀렉트박스 선택시 경고창 스크립트를 어떻게 짜야할까요?

본문

2109093523_1723281300.5929.jpg

 

스크립트를 어떻게 만들어야 할지 몰라서 문의 드립니다.

셀렉트박스 두개가 있습니다.

하나는 시작시간 하나는 종료시간입니다.

 

제가 하고싶은것은

종료시간이 시작시간보다 같거나 앞에 있을경우에
(이루질수 없는 경우이겠지요)

"시간설정 오류입니다." 라는 메세지를 띄우고 싶습니다.

어떻게 해아할지 감이 안오네요

고수님들의 답변을 부탁드립니다.

이 질문에 댓글 쓰기 :

답변 1

다음 코드가 도움이 될지 모르겠습니다.

 


<script src="http://code.jquery.com/jquery-latest.min.js"></script>
<script>
function validate_option(evt) {
    var idx = null;
    var val_a = $('#opt_start option:selected').attr('value')?.replace(':', '') || -1;
    var val_b = $('#opt_finish option:selected').attr('value')?.replace(':', '') || -1;
    val_a = Number(val_a);
    val_b = Number(val_b);
    
    if (val_a > -1 && val_b > -1 && val_a >= val_b) {
        alert('시간설정 오류입니다.');
        idx = $(evt.target).attr('idx-before') || 0;
        $(evt.target).children('option:eq(' + idx + ')').prop('selected', true);
        return;
    }
 
    idx = $(evt.target).children('option:selected').index();
    $(evt.target).attr('idx-before', idx);
}
 
$(function () {
    $('#opt_start').change(validate_option);
    $('#opt_finish').change(validate_option);
});
</script>
 
<select id="opt_start">
    <option>시작시간</option>
    <option value="10:00">10:00</option>
    <option value="10:30">10:30</option>
    <option value="11:00">11:00</option>
    <option value="11:30">11:30</option>
    <option value="12:00">12:00</option>
    <option value="12:30">12:30</option>
    <option value="13:00">13:00</option>
    <option value="13:30">13:30</option>
    <option value="14:00">14:00</option>
    <option value="14:30">14:30</option>
    <option value="15:00">15:00</option>
</select>
<select id="opt_finish">
    <option>종료시간</option>
    <option value="10:30">10:30</option>
    <option value="11:00">11:00</option>
    <option value="11:30">11:30</option>
    <option value="12:00">12:00</option>
    <option value="12:30">12:30</option>
    <option value="13:00">13:00</option>
    <option value="13:30">13:30</option>
    <option value="14:00">14:00</option>
    <option value="14:30">14:30</option>
    <option value="15:00">15:00</option>
    <option value="15:30">15:30</option>
</select>
답변을 작성하시기 전에 로그인 해주세요.
전체 1,543
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT