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
자기 자신을 신뢰할 수 있는 사람이 다른 사람을 신뢰할 수 있다.