테스트 사이트 - 개발 중인 베타 버전입니다

다음 우편번호api 채택완료

클립 6년 전 조회 4,185

다음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;                    }                 });

 

 

</p>

<p> <script type="text/javascript" src="//dapi.kakao.com/v2/maps/sdk.js?appkey=키입력&libraries=services"></script></p>

<p>    <script src="<a href="http://dmaps.daum.net/map_js_init/postcode.v2.js"></script>" target="_blank" rel="noopener noreferrer">http://dmaps.daum.net/map_js_init/postcode.v2.js"></script></a></p>

<p> </p>

<p> </p>

<p><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>



                <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" /></p>

<p>

 

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개

업데이트문을 확인해보세요

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인