쌍용 강북 교육센터 국비학원 Day 70일차
라디오중에서 한개를 선택했을 경우 같은 index의 이벤트 발생 예제
위와 같이 하나의 라디오를 선택했을때 point가 적혀있는 span 태그의 addClass를 하는 예시이다.
팝업창에서 부모창 함수 호출 방법 3가지
결제로직과 같이 팝업창과 페이지창이 번갈아가면서 로직을 구현해야할 때 함수를 이용하는데 이 때 부모창 (페이지창)의 함수를 호출하는 방법이다.
일반적인 방법 - 1
opener.location.href = "javascript:부모창스크립트 함수명();";
일반적인 방법 - 2
window.opener.부모창스크립트 함수명(); (window.opener는 부모창을 뜻한다)
jQuery를 이용한 방법
$(opener.location).attr( "href", "javascript:부모창스크립트 함수명();" );
※ 부모창 새로고침
opener.location.reload(true);
KG이니시스 결제창 로직 (오픈 API)
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js" ></script>
<script type="text/javascript" src="https://service.iamport.kr/js/iamport.payment-1.1.2.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 여기 링크를 꼭 참고하세용 http://www.iamport.kr/getstarted
var IMP = window.IMP; // 생략가능
IMP.init(''); // 중요!! 아임포트에 가입시 부여받은 "가맹점 식별코드".
// 결제요청하기
IMP.request_pay({
pg : 'html5_inicis', // 결제방식 PG사 구분
pay_method : 'card', // 결제 수단
merchant_uid : 'merchant_' + new Date().getTime(), // 가맹점에서 생성/관리하는 고유 주문번호
name : '결제테스트(코인충전|주문명)', // 코인충전 또는 order 테이블에 들어갈 주문명 혹은 주문 번호. (선택항목)원활한 결제정보 확인을 위해 입력 권장(PG사 마다 차이가 있지만) 16자 이내로 작성하기를 권장
amount : 100, // '${coinmoney}' 결제 금액 number 타입. 필수항목.
buyer_email : '', // 구매자 email
buyer_name : '${name}', // 구매자 이름
buyer_tel : '', // 구매자 전화번호 (필수항목)
buyer_addr : '',
buyer_postcode : '',
m_redirect_url : '' // 휴대폰 사용시 결제 완료 후 action : 컨트롤러로 보내서 자체 db에 입력시킬것!
}, function(rsp) {
/*
if ( rsp.success ) {
var msg = '결제가 완료되었습니다.';
msg += '고유ID : ' + rsp.imp_uid;
msg += '상점 거래ID : ' + rsp.merchant_uid;
msg += '결제 금액 : ' + rsp.paid_amount;
msg += '카드 승인번호 : ' + rsp.apply_num;
} else {
var msg = '결제에 실패하였습니다.';
msg += '에러내용 : ' + rsp.error_msg;
}
alert(msg);
*/
if ( rsp.success ) { // PC 데스크탑용
/* === 팝업창에서 부모창 함수 호출 방법 3가지 ===
1-1. 일반적인 방법
opener.location.href = "javascript:부모창스크립트 함수명();";
opener.location.href = "http://www.aaa.com";
1-2. 일반적인 방법
window.opener.부모창스크립트 함수명();
2. jQuery를 이용한 방법
$(opener.location).attr("href", "javascript:부모창스크립트 함수명();");
*/
// opener.location.href = "javascript:goCoinUpdate('${idx}','${coinmoney}');";
window.opener.goCoinUpdate('${idx}','${coinmoney}');
// $(opener.location).attr("href", "javascript:goCoinUpdate('${idx}','${coinmoney}');");
self.close();
} else {
location.href="/MyMVC";
alert("결제에 실패하였습니다.");
}
}); // end of IMP.request_pay()----------------------------
}); // end of $(document).ready()-----------------------------
</script>
</head>
<body>
</body>
</html>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.4.min.js" ></script>
<script type="text/javascript" src="https://service.iamport.kr/js/iamport.payment-1.1.2.js"></script>
<script type="text/javascript">
$(document).ready(function() {
// 여기 링크를 꼭 참고하세용 http://www.iamport.kr/getstarted
var IMP = window.IMP; // 생략가능
IMP.init(''); // 중요!! 아임포트에 가입시 부여받은 "가맹점 식별코드".
// 결제요청하기
IMP.request_pay({
pg : 'html5_inicis', // 결제방식 PG사 구분
pay_method : 'card', // 결제 수단
merchant_uid : 'merchant_' + new Date().getTime(), // 가맹점에서 생성/관리하는 고유 주문번호
name : '결제테스트(코인충전|주문명)', // 코인충전 또는 order 테이블에 들어갈 주문명 혹은 주문 번호. (선택항목)원활한 결제정보 확인을 위해 입력 권장(PG사 마다 차이가 있지만) 16자 이내로 작성하기를 권장
amount : 100, // '${coinmoney}' 결제 금액 number 타입. 필수항목.
buyer_email : '', // 구매자 email
buyer_name : '${name}', // 구매자 이름
buyer_tel : '', // 구매자 전화번호 (필수항목)
buyer_addr : '',
buyer_postcode : '',
m_redirect_url : '' // 휴대폰 사용시 결제 완료 후 action : 컨트롤러로 보내서 자체 db에 입력시킬것!
}, function(rsp) {
/*
if ( rsp.success ) {
var msg = '결제가 완료되었습니다.';
msg += '고유ID : ' + rsp.imp_uid;
msg += '상점 거래ID : ' + rsp.merchant_uid;
msg += '결제 금액 : ' + rsp.paid_amount;
msg += '카드 승인번호 : ' + rsp.apply_num;
} else {
var msg = '결제에 실패하였습니다.';
msg += '에러내용 : ' + rsp.error_msg;
}
alert(msg);
*/
if ( rsp.success ) { // PC 데스크탑용
/* === 팝업창에서 부모창 함수 호출 방법 3가지 ===
1-1. 일반적인 방법
opener.location.href = "javascript:부모창스크립트 함수명();";
opener.location.href = "http://www.aaa.com";
1-2. 일반적인 방법
window.opener.부모창스크립트 함수명();
2. jQuery를 이용한 방법
$(opener.location).attr("href", "javascript:부모창스크립트 함수명();");
*/
// opener.location.href = "javascript:goCoinUpdate('${idx}','${coinmoney}');";
window.opener.goCoinUpdate('${idx}','${coinmoney}');
// $(opener.location).attr("href", "javascript:goCoinUpdate('${idx}','${coinmoney}');");
self.close();
} else {
location.href="/MyMVC";
alert("결제에 실패하였습니다.");
}
}); // end of IMP.request_pay()----------------------------
}); // end of $(document).ready()-----------------------------
</script>
</head>
<body>
</body>
</html>
'Web > JSP' 카테고리의 다른 글
쌍용강북교육센터 국비 학원 Day 77일차 JSP (input 태그 이미지 업로드) (0) | 2023.04.21 |
---|---|
쌍용강북교육센터 국비 학원 Day 73일차 JSP (페이징 처리, Paging) (0) | 2023.04.17 |
쌍용강북교육센터 국비 학원 Day 69일차 JSP (Modal 값 초기화, reload, 이메일 인증코드 구현) (0) | 2023.04.11 |
쌍용강북교육센터 국비 학원 Day 67일차 JSP (session 세션) (0) | 2023.04.09 |
쌍용강북교육센터 국비 학원 Day 66일차 JSP (암호화/복호화, Ajax, Json) (0) | 2023.04.06 |