728x90
반응형
<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>
이렇게 하면 된다.
반응형
'개발자의 공부방 > Frontend' 카테고리의 다른 글
자바스크립트] 비밀번호 확인하기. (0) | 2021.03.16 |
---|---|
JSTL selectbox 시간 분 나타내기 feat. option value 값도 함께 (0) | 2020.07.13 |
ajax] 배열과 오브젝트 feat. input 에 value 값 넣기 (0) | 2020.03.27 |
데이터테이블 DataTable] 옵션 (0) | 2020.03.20 |
DataTable] DataTables Cannot read property 'length' of undefined 에러 (0) | 2020.03.20 |