일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 이클립스
- Book
- DB
- 도서
- 에러
- JavaScript
- 한글
- 태그를 입력해 주세요.
- 톰캣
- Excel
- 성능
- 자바
- Tomcat
- MIP
- 데이터베이스
- JEUS
- 오라클
- Eclipse
- 기타소득
- 튜닝
- Report Designer
- 마이플랫폼
- 함수
- java
- error
- 회계
- 엑셀
- miplatform
- oracle
- 오류
- Today
- Total
어느 가을날의 전환점
JAVASCRIPT|팝업 부모창과 자식창의 데이터 전달 모달 window.showModalDialog 본문
부모창과 자식창의 데이터 전달 Html/JavaScript
// 부모창
<script language="JavaScript">
function Popup(){
var strURL = "pop.html";
var strPos = "dialogWidth:250px;dialogHeight:300px;status:no;scroll:no;resizable:no";
var result = new Array();
// 객체생성후 데이터 할당
var modalvalue = new Object();
modalvalue.key1 = name.value;
modalvalue.key2 = age.value;
// 팝업 뛰우기(데이터전송)
result = window.showModalDialog(strURL,modalvalue,strPos);
// 추가 (자식창 데이터 리턴받기)
var firstList = new Array();
firstList = result.split(";"); // 데이터구분자
name.value = firstList[0];
sex.value = firstList[1];
age.value = firstList[2];
}
</script>
// 자식창
<script language="JavaScript">
var opener = window.dialogArguments; // 부모창객체 통째로 get
var value1 = opener.key1; // 객체에 접근
var value2 = opener.key2;
</script>
==================================================================
// 자식창 데이터 => 부모창으로 넘기기
// 자식창
function Put(){
var pam1 = name.value;
var pam2 = age.value;
var pam3 = 100;
window.returnValue = pam1 + ";" + pam2 + " ;" + pam3 + " ;";
window.close();
}
// 부모창
var firstList = new Array();
firstList = result.split(";"); // 데이터구분자
name.value = firstList[0];
sex.value = firstList[1];
age.value = firstList[2];
===============================================================
// 응용
// 부모창
function ln_Popup(e1,e2){
var strURL;
var strPos;
var arrResult = new Array();
var arrSend = new Array();
arrSend[0]='A';
window.dialogArguments=arrSend[0];
strURL = "../../common/html/school_pay_pop.html";
strPos = "dialogWidth:377px;dialogHeight:393px;status:no;scroll:no;resizable:no";
arrResult = showModalDialog(strURL,'',strPos);
if (arrResult != null) {
arrParam = arrResult.split(";");
eval(e1).text = arrParam[0];
eval(e2).value = arrParam[1];
} else {
eval(e1).text = "";
eval(e2).value = "";
}
}
// 호출
onclick="ln_Popup('txt_chakgyo','txt_chakgyonm')"
// 자식
function ln_Start(){
if(window.dialogArguments[0] == "A"){
alert("A값이 넘어왔습니다.");
gubun = "A";
}else{
gubun="B";
}
}
// 자식 => 부모창으로 리턴
function ln_Close(e){
if (e=="A") {
var row = gcds_data.rowposition;
window.returnValue = gcds_data.namevalue(row,"MINORCD") + ";"
+ gcds_data.namevalue(row,"MINORNM") + ";" ;
window.close();
} else {
window.close();
}
}
#출처: http://blog.naver.com/linuxblack/90128272930
'Development' 카테고리의 다른 글
ECLIPSE|프로젝트 Import 시 Lib가 Build Path에 적용 안되는 경우 (1) | 2014.01.03 |
---|---|
RegExp|정규 표현식(정규식, regular expression, regexp, regex) (0) | 2013.11.18 |
JAVA|자바로 메일 발송 시 한글 깨지는 현상 (0) | 2013.09.06 |
ECLIPSE|이클립스 서버 오류 - java.lang.OutOfMemoryError: Java heap space (0) | 2013.08.01 |
ECLIPSE|이클립스 실행 시 오류 - Failed to create the Java Virtual Machine. (0) | 2013.06.10 |