2013-05-09 3 views
1

컨트롤을 제어하는 ​​Javascript 뷰 모델이 포함 된 응용 프로그램이 있습니다.하위 폼에 대한 하위 창 나누기에 대한 부모 참조 제출

응용 프로그램은 (window.open())을 사용하여 새 창을 시작하고 새 윈도우의 버튼에 '클릭'이벤트 리스너를 지정합니다. 새 창에는 제출 될 때 창에서 "언로드"이벤트가 발생하여 부모 창에서 액세스를 차단하는 양식이 포함됩니다.

'언로드'하고 양식을 제출할 때 부모가이 새 창에 대한 참조를 유지하거나 복원 할 수있는 방법은 무엇입니까?

답변

0

해당 참조를 보관할 수 없습니다. 그러나 어떤 종류의 값에 액세스하려는 경우 cookies 또는 local storage을 볼 수 있습니다.

"언로드"이벤트에 이벤트 수신기를 연결하여 참조를 복원 할 수도 있습니다. 이벤트가 발생하면 현재 "부모"창을 닫고 "제출"스크립트가 부모 창을 가리 키도록 만듭니다. 일단 열면 자식 창을 다시 열 수 있습니다. 지저분한 될 수 있습니다 자바 스크립트

업데이트

크로스 창. 해당되는 경우 첫 번째 방법을 사용하는 것이 좋습니다.

0

내가 아는 한, 모든 브라우저가 제공 한 경우에도 이름으로 창에 다시 액세스 할 수있는 것은 아닙니다. 하지만 난 여전히 window.open와 별개의 창 이름을 사용하려고합니다.

URL을 사용하지 않고 window.open을 수행하려고 할 때 - 어쩌면 javascript:void(0)을 주소로 사용하십시오 (따라서 창은 이동하지 않습니다). 동일한 ID를 사용하는 한 동일한 창이어야합니다. .

그래도 꽤 해킹되다.

관련 문제