함수 중첩 관련 질문드립니다.

함수 중첩 관련 질문드립니다.

QA

함수 중첩 관련 질문드립니다.

본문

★먼저 소스입니다.

 

<select name="sfl" id="sfl" onchange="chageLangSelect()" >

<option value="mb_id"<?php echo get_selected($_GET['sfl'], "mb_id"); ?>>회원아이디</option>

<option value="mb_nick"<?php echo get_selected($_GET['sfl'], "mb_nick"); ?>>닉네임</option>

<option value="mb_hp"<?php echo get_selected($_GET['sfl'], "mb_hp"); ?>>휴대폰번호</option>

</select>

 

<input type="text" name="stx" value="<?php echo $stx ?>" id="stx" required class="required frm_input" onKeyup="addDashMem(this)" >

 

<script>

 

 function addDashMem(check){

                            var check_string = check.value;

                            var check_string = check_string.replace(/[^0-9]/g, '');

                            var len = check_string.length;

                            if (len >= 1 && check_string.substr(0,1) == '1'){

                                if (len >= 5 && len <= 7){

                                    var subA = check_string.substr(0,4);

                                    var subF = check_string.substr(4,4);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 8){

                                    var subA = check_string.substr(0,4);

                                    var subF = check_string.substr(4,4);

                                    check.value = subA + "-" + subF;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else if (len >= 2 && check_string.substr(0,2) == '02'){

                                if (len >= 3 && len <= 5){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,3);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 6 && len <= 9){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,3);

                                    var subB = check_string.substr(5,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else if (len >= 10){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,4);

                                    var subB = check_string.substr(6,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else if (len >= 2 && check_string.substr(0,2) != '02'){

                                if (len >= 4 && len <= 6){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,3);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 7 && len <= 10){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,3);

                                    var subB = check_string.substr(6,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else if (len >= 11){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,4);

                                    var subB = check_string.substr(7,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else{

                                check.value = check_string;

                            }

                        }

 

</script>

 

★현재는 input에 대해서 숫자를 넣을때, 000-0000-0000 으로 되게끔 스크립트 구현한 상태입니다.

셀렉트 옵션중에서 휴대폰번호를 선택했을때만 하이픈 (-)이 되게끔 하고 싶습니다;

★위치는 어드민 관리 그누보드 회원관리쪽 옵션에 따른 검색할때 입니다.

 

어떻게 해야할까요?ㅠ 도와주세용

이 질문에 댓글 쓰기 :

답변 1

   이렇게 바꿔보실레요

 

 function addDashMem(check){

     var select = document.getElementById("sfl");
     var optionVal = (select.options[select.selectedIndex].value);

     if(optionVal == 'mb_hp'){

                            var check_string = check.value;

                            var check_string = check_string.replace(/[^0-9]/g, '');

                            var len = check_string.length;

                            if (len >= 1 && check_string.substr(0,1) == '1'){

                                if (len >= 5 && len <= 7){

                                    var subA = check_string.substr(0,4);

                                    var subF = check_string.substr(4,4);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 8){

                                    var subA = check_string.substr(0,4);

                                    var subF = check_string.substr(4,4);

                                    check.value = subA + "-" + subF;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else if (len >= 2 && check_string.substr(0,2) == '02'){

                                if (len >= 3 && len <= 5){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,3);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 6 && len <= 9){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,3);

                                    var subB = check_string.substr(5,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else if (len >= 10){

                                    var subA = check_string.substr(0,2);

                                    var subF = check_string.substr(2,4);

                                    var subB = check_string.substr(6,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else if (len >= 2 && check_string.substr(0,2) != '02'){

                                if (len >= 4 && len <= 6){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,3);

                                    check.value = subA + "-" + subF;

                                }

                                else if (len >= 7 && len <= 10){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,3);

                                    var subB = check_string.substr(6,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else if (len >= 11){

                                    var subA = check_string.substr(0,3);

                                    var subF = check_string.substr(3,4);

                                    var subB = check_string.substr(7,4);

                                    check.value = subA + "-" + subF + "-" + subB;

                                }

                                else{

                                    check.value = check_string;

                                }

                            }

                            else{

                                check.value = check_string;

                            }

                }

}

 

답변을 작성하시기 전에 로그인 해주세요.
전체 123,532 | RSS
QA 내용 검색

회원로그인

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