6060 <tr >
6161 <th >주소</th >
6262 <td >
63- <input type =" text" name =" buyer_addr" class =" form-control" />
63+ <input type =" text" name =" buyer_addr" class =" form-control" readonly />
64+ </td >
65+ </tr >
66+ <tr >
67+ <th >상세주소</th >
68+ <td >
69+ <input type =" text" name =" detail_addr" class =" form-control" />
6470 </td >
6571 </tr >
6672 <tr >
6773 <th >우편번호</th >
6874 <td >
69- <input type =" text" name =" buyer_postcode" class =" form-control" placeholder =" 000-000" />
75+ <input type =" text" name =" buyer_postcode" class =" form-control" placeholder =" 000-000" readonly />
76+ <span style =" margin-top :10px " class =" btn btn-primary" onclick =" setDaumPostcode()" >우편번호 찾기</span >
7077 </td >
7178 </tr >
7279 </tbody >
7582 <button class =" btn btn-primary" >구매하기</button >
7683 </div >
7784 </form >
85+ <!-- Iamport 결제 연동-->
7886<script type =" text/javascript" src =" https://service.iamport.kr/js/iamport.payment-1.1.2.js" ></script >
79-
87+ <!-- 주소록 연동-->
88+ <script src =" http://dmaps.daum.net/map_js_init/postcode.v2.js" ></script >
8089<script >
8190$ (document ).ready (function (){
8291 $ (' #orderForm' ).submit (function (){
8392 var amount = < %= totalAmount% > ;
8493 var buyer_email = $ (' input[name=buyer_email]' ).val ();
8594 var buyer_name = $ (' input[name=buyer_name]' ).val ();
8695 var buyer_tel = $ (' input[name=buyer_tel]' ).val ();
87- var buyer_addr = $ (' input[name=buyer_addr]' ).val ();
96+ var buyer_addr = $ (' input[name=buyer_addr]' ).val () + ' / ' + $ ( ' input[name=detail_addr] ' ). val (); // 주소+상세주소
8897 var buyer_postcode = $ (' input[name=buyer_postcode]' ).val ();
8998
9099 var IMP = window .IMP ;
@@ -142,6 +151,49 @@ $(document).ready(function(){
142151 return false ;
143152 });
144153});
154+
155+ function setDaumPostcode () {
156+ new daum.Postcode ({
157+ oncomplete : function (data ) {
158+ // 팝업에서 검색결과 항목을 클릭했을때 실행할 코드를 작성하는 부분.
159+
160+ // 각 주소의 노출 규칙에 따라 주소를 조합한다.
161+ // 내려오는 변수가 값이 없는 경우엔 공백('')값을 가지므로, 이를 참고하여 분기 한다.
162+ var fullAddr = ' ' ; // 최종 주소 변수
163+ var extraAddr = ' ' ; // 조합형 주소 변수
164+
165+ // 사용자가 선택한 주소 타입에 따라 해당 주소 값을 가져온다.
166+ if (data .userSelectedType === ' R' ) { // 사용자가 도로명 주소를 선택했을 경우
167+ fullAddr = data .roadAddress ;
168+
169+ } else { // 사용자가 지번 주소를 선택했을 경우(J)
170+ fullAddr = data .jibunAddress ;
171+ }
172+
173+ // 사용자가 선택한 주소가 도로명 타입일때 조합한다.
174+ if (data .userSelectedType === ' R' ){
175+ // 법정동명이 있을 경우 추가한다.
176+ if (data .bname !== ' ' ){
177+ extraAddr += data .bname ;
178+ }
179+ // 건물명이 있을 경우 추가한다.
180+ if (data .buildingName !== ' ' ){
181+ extraAddr += (extraAddr !== ' ' ? ' , ' + data .buildingName : data .buildingName );
182+ }
183+ // 조합형주소의 유무에 따라 양쪽에 괄호를 추가하여 최종 주소를 만든다.
184+ fullAddr += (extraAddr !== ' ' ? ' (' + extraAddr + ' )' : ' ' );
185+ }
186+
187+ // 우편번호와 주소 정보를 해당 필드에 넣는다.
188+ $ (' input[name=buyer_postcode]' ).val (data .zonecode );
189+ $ (' input[name=buyer_addr]' ).val (fullAddr);
190+
191+ // 커서를 상세주소 필드로 이동한다.
192+ $ (' input[name=detail_addr]' ).focus ();
193+ }
194+ }).open ();
195+ }
196+
145197 </script >
146198
147199<% include ../ footer .ejs %>
0 commit comments