JScript - Dialog의 returnValue | JavaScript 2005/02/20 17:32
http://blog.naver.com/goindole/10327304
from phpschool
제 홈에 어떤 분이 질문을 올렸는데, 많은 분들이 모르시는 내용인 듯 하여 이곳에 그 답변을 대신 씁니다. JScript의 Dialog에 관련된 내용입니다.
JScript의 showModalDialog나 showModelessDialog 메소드를 통해 웹 페이지 대화상자를 오픈시키면 window.open()을 사용한 경우보다 더 깔끔하게 대화상자를 오픈시킬 수 있습니다. 이것은 많은 분들이 알고 계시던데, 대화상자에서 처리한 결과값을 원래의 브라우져로 전달해 주는 방법을 모르시는 분들이 많은 것 같더군요.
showModalDialog나 showModelessDialog로 오픈시킨 대화상자에서는 returnValue라는 변수에 어떠한 값을 넣어줌으로써 대화상자를 오픈시킨 브라우저에 특정값을 리턴할 수 있습니다.
예제를 보여드리죠.
위와 같은 식으로 대화상자의 returnValue를 1111로 설정해 주면, 대화상자가 닫힐때 원래 브라우져의 nTest라는 변수에는 1111의 값이 들어가게 됩니다.
주의하십시오! 대화상자가 닫히는 순간에 브라우져로 값이 전달되는 것이지, returnValue에 값이 넣어질때 브라우져로 값이 전달되는 것이 아닙니다. 말 그대로 return값을 정해주는 것입니다.
만약 전달해주어야 하는 값이 한개가 아니라 여러개일때는 어떻게 해야 할까요?
그때는 어레이나 구조체를 사용하시면 됩니다.
위와 같이 oMultiValue라는 구조체(?)를 만들어 값을 넘겨주면 2개, 3개, 100개, 1000개의 값도 넘겨줄 수 있겠죠? 넘겨줄 수 있는 값은 오브젝트도 가능하고 스트링도 가능하고 어레이도 가능하며 그 어떤 값도 가능합니다.
질문하셨던 분께 도움이 되었길 빕니다.
읽어주셔서 감사합니다.