0

사용자가 클릭 할 수있는 이미지 목록이있는 하위 창을 여는 버튼이있어서 매개 변수의 값을 매개 변수를 배열 값에 넣는 함수에 전달합니다. 변수는 부모 창에서 생성 된 다음 자식 창을 닫습니다. 현재 코드는 Chrome과 Firefox에서 작동하지만 IE에서 작동하지 않습니다. 그 중 일부는 내가 알기에 지식이 없습니다!자식 윈도우가 IE에서 변수 값을 돌려 보내지 않음

var edge; 

function getEdgeProfile(){ 
    myEdge = window.open('edge.html','','top=50,left=50,width=400,height=400'); 
} 

아이 : 나는 현재의 순간에조차 IE 9에

부모 창 코드를 작동하지 않지만 즉, 가능하다면 그것은 IE 7까지에서 작업 할 바람직 것 윈도우 코드 :

<head> 
<script> 

function selectEdge(name, price, type){ 
    opener.edge = [name, price, type]; 
    window.close(); 
} 

</script> 
</head> 
<body> 

<img src="1.png" width="100px" height="100px" onClick='selectEdge("Square Edge 2mm ARRIS", 30.5, 1)'> 
<img src="2.png" width="100px" height="100px" onClick='selectEdge("4 x 4 mm SINGLE BEVEL", 38.56, 1)'> 
<img src="3.png" width="100px" height="100px" onClick='selectEdge("4 x 4 mm DOUBLE BEVEL", 46.49, 1)'> 
<img src="4.png" width="100px" height="100px" onClick='selectEdge("V JOINT WITH SINGLE PENCIL", 38.56, 2)'> 

</body> 

나는 JSFiddle를 추가하지만 내가 ~ 어떤 도움을 감사 할 수없는 별도의 페이지를 엽니 다!

답변

1

팝업을 닫으면 팝업으로 할당 된 데이터가 손실됩니다. (IE에서)

팝업에서 데이터를 매개 변수로 사용하여 오프너에 함수를 호출하는 것이 좋습니다. 그런 다음 함수는 데이터를 오프너의 변수에 설정 (복사)합니다. 그래서,이 작업을해야합니다 :

자식 창을 (아직 테스트하지 않음) :

function selectEdge(name, price, type){ 
    opener.setEdge(name, price, type); 
    window.close(); 
} 

부모 창 :이 일을

function setEdge(name, price, type){ 
    edge = [name, price, type]; 
} 
+0

, 감사합니다 :) ~ 당신을 부모 창 함수에 잘못된 이름 인 btw를 보냈습니다. –

+0

복사 - 붙여 넣기의 위험. 천만에요 :-) – Cerbrus

관련 문제