본문 바로가기
개발자의 공부방/JS

자바스크립트] 다음주소 API 주소찾기 적용하기

by 쌈빡한 쥬니준 2020. 3. 30.
<script src="https://t1.daumcdn.net/mapjsapi/bundle/postcode/prod/postcode.v2.js"></script>
function execDaumPostcode() {
new daum.Postcode({
oncomplete: function(data) {
// 팝업에서 검색결과 항목을 클릭했을때 실행할 코드를 작성하는 부분.

// 도로명 주소의 노출 규칙에 따라 주소를 조합한다.
// 내려오는 변수가 값이 없는 경우엔 공백('')값을 가지므로, 이를 참고하여 분기 한다.
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('zip').value = data.zonecode; //5자리 새우편번호 사용
document.getElementById('addr1').value = fullRoadAddr;
document.getElementById('addr2').focus();
}
}).open();
}
<tr>
<th>주소</th>
<td>
<input name="zipcode" id="zip" type="text" class="" maxlength="6" title="우편번호" value="" readonly="readonly"/>
<a href="javascript:execDaumPostcode();" class="btn">주소찾기</a>
<br>
<input name="addr1" id="addr1" type="text" value="" /><br>
<input name="addr2" id="addr2" type="text" value="" />
</td>
</tr>

 

 

이렇게 하면 된다.

댓글0