다음 우편번호api

다음 우편번호api

QA

다음 우편번호api

본문

다음api 우편번호 검색시 wr_5에 도로명주소, wr_6에 지번주소가 정상적으로 잘 들어가는데

다음카카오 지도 API가 바뀌면서부터 주소를바탕으로  wr_7, wr_8 필드에 좌표값이 저장되지않아요.

 

뭐가문제인지 살펴봐주시면 감사하겠습니다. ㅠ.ㅠ

우편번호 검색시 팝업창이 뜨는데 주소를 선택해도 팝업창이 안닫히디고해요.

 

 

gcd.addr2coord(data.jibunAddress, function(status, result) {
                    if (status === daum.maps.services.Status.OK) {

                       document.getElementById('posX').value = result.addr[0].lat;
                       document.getElementById('posY').value = result.addr[0].lng;
                   }
                });

 


 


 <script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=키입력&libraries=services"></script>
    <script src="http://dmaps.daum.net/map_js_init/postcode.v2.js"></script>
 
 
<input type="text" id="sample4_postcode" name="wr_4" value="<?php echo $wr_4 ?>" placeholder="우편번호" required class="frm_input required">
                <button type="button" class="btn_frmline" onclick="sample4_execDaumPostcode()">우편번호 찾기</button><br /><br />
                <input type="text" id="sample4_roadAddress" name="wr_5" value="<?php echo $wr_5 ?>" placeholder="도로명주소" required class="frm_input required" size="35">
                <input type="text" id="sample4_jibunAddress" name="wr_6" value="<?php echo $wr_6 ?>" placeholder="지번주소" required class="frm_input required" size="35">
                <input type="hidden" name="wr_7" value="<?php echo $wr_7 ?>" id="posX" />
                <input type="hidden" name="wr_8" value="<?php echo $wr_8 ?>" id="posY" />
                <input type="hidden" name="wr_9" value="<?php echo $wr_9 ?>" id="saddr" />

 

function sample4_execDaumPostcode() {
        new daum.Postcode({
            oncomplete: function(data) {
                var gcd = new daum.maps.services.Geocoder();
                // 팝업에서 검색결과 항목을 클릭했을때 실행할 코드를 작성하는 부분.

                // 도로명 주소의 노출 규칙에 따라 주소를 조합한다.
                // 내려오는 변수가 값이 없는 경우엔 공백('')값을 가지므로, 이를 참고하여 분기 한다.
                var fullRoadAddr = data.roadAddress; // 도로명 주소 변수
                var extraRoadAddr = ''; // 도로명 조합형 주소 변수

                // 법정동명이 있을 경우 추가한다. (법정리는 제외)
                // 법정동의 경우 마지막 문자가 "동/로/가"로 끝난다.
                if(data.bname !== '' && /[동|로|가]$/g.test(data.bname)){
                    extraRoadAddr += data.bname;
                }
                // 건물명이 있고, 공동주택일 경우 추가한다.
                if(data.buildingName !== '' && data.apartment === 'Y'){
                   extraRoadAddr += (extraRoadAddr !== '' ? ', ' + data.buildingName : data.buildingName);
                }
                // 도로명, 지번 조합형 주소가 있을 경우, 괄호까지 추가한 최종 문자열을 만든다.
                if(extraRoadAddr !== ''){
                    extraRoadAddr = ' (' + extraRoadAddr + ')';
                }
                // 도로명, 지번 주소의 유무에 따라 해당 조합형 주소를 추가한다.
                if(fullRoadAddr !== ''){
                    fullRoadAddr += extraRoadAddr;
                }

                // 우편번호와 주소 정보를 해당 필드에 넣는다.
                document.getElementById('sample4_postcode').value = data.zonecode; //5자리 새우편번호 사용
                document.getElementById('sample4_roadAddress').value = fullRoadAddr;
                document.getElementById('sample4_jibunAddress').value = data.jibunAddress;
                document.getElementById('saddr').value = data.sido + ' ' + data.sigungu + ' ' + data.bname;

                gcd.addr2coord(data.jibunAddress, function(status, result) {
                    if (status === daum.maps.services.Status.OK) {

                       document.getElementById('posX').value = result.addr[0].lat;
                       document.getElementById('posY').value = result.addr[0].lng;
                   }
                });

                // 사용자가 '선택 안함'을 클릭한 경우, 예상 주소라는 표시를 해준다.
                if(data.autoRoadAddress) {
                    //예상되는 도로명 주소에 조합형 주소를 추가한다.
                    var expRoadAddr = data.autoRoadAddress + extraRoadAddr;
                    document.getElementById('guide').innerHTML = '(예상 도로명 주소 : ' + expRoadAddr + ')';

                } else if(data.autoJibunAddress) {
                    var expJibunAddr = data.autoJibunAddress;
                    document.getElementById('guide').innerHTML = '(예상 지번 주소 : ' + expJibunAddr + ')';

                } else {
                    document.getElementById('guide').innerHTML = '';
                }
            }
        }).open();
    }

이 질문에 댓글 쓰기 :

답변 1

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

회원로그인

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