Html & Script

[스크립트] showModalDialog()

페이지 정보

본문

modal dialog에서 opener를 사용할수 없다는거였는데
몇몇군데 검색해봤는데 나오질 않더라고요
그래서 msdn과 또 다른 웹페이지(링크에있음)를 찾아보았습니다.

vReturnValue = window.showModalDialog(sURL [, vArguments] [, sFeatures])

위의것이 msdn에 의한 문법이고요
(http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/methods/showmodaldialog.asp)
vReturnValue에 관한것은 이곳 팁텍란에 예전에 올라왔더군요.

sURL은 window.open에서와 마찬가지로 창에 띄울 문서이름이고요
sFeatures 역시 창을 띄울때의 옵션값들입니다.
중요한것은 vArguments인데, 아래의 링크를 보면 예제와 함께 설명이 잘 되어 있습니다.
(http://www.webreference.com/js/tutorial1/dialog.html)
영어를 싫어하시는 분들을 위해 제가 나름대로 설명해보면...

vArguments로 넘겨준 인수는 modal창에서 dialogArguments로 받습니다.

showModalDialog('whoareyou.html', window, 'dialogWidth:400px; dialogHeight:200px; center:yes;');

이와같이 모달창을 띄우면 모달창에서의 dialogArguments가
원래창의 window객체를 전달받습니다.
이제 dialogArguments를 통해 opener처럼 원래창을 건드려볼 수 있습니다.

저는 모달창을 띄우고 원래창을 reload()하는것을 원했기 때문에 다음과 같이 해봤습니다.

<script>
document.onload = dialogArguments.location.reload();
</script>

도움이 되셨기를 바랍니다. -_-) (__)


dialogArguments.document.form[0].name.value = \'changed!\';
이런식으로 form에도 접근 가능하고요...IE6에서 해봄.


resizable:0 -> 창 size 고정 (1은 size 조절 가능)
help:0 -> 우측 상단에 \"?\" view 안함 (1은 view 함)
status:0 -> 하단에 현 파일의 경로 표시 안함 (1은 표시함)
center:0 -> height 중앙 정렬 안함(1은 중앙 정렬함)

관련자료

등록된 댓글이 없습니다.
Today's proverb
만일 당신이 배를 만들고 싶다면 사람들을 불러모아 목재를 가져오게 하고 일을 지시하고 일감을 나눠 주는 등의 일을 하지 말아라. 대신 그들에게 저 넓고 끝없는 바다에 대한 동경심을 키워 줘라. (생텍쥐페리)