2012-03-28 17 views
3

Ich habe eine Seite, die das Popup alswindow.opener ist null in firefox

openWindow(top, 'prcsTypeSelectionPopup?event=prcsTypeSelection', 'lovWindow', {width:750, height:550}, true, 'dialog', pathCallBack); 

und das Popup hat den folgenden Code wird

function returnSelect() 
{ 
    window.document.forms[0].choice_processType.value ; 
    window.opener.document.forms[0].pevent.value = 'getprocessName'; 
    window.opener.document.forms[0].processName.value=''; 
    for (var i=0; i < document.forms[0].elements.length; i++) 
    { 
    if (document.forms[0].elements[i].checked) 
     { 
     window.opener.document.forms[0].processName.value=document.forms[0].elements[i].value; 
     break; 
     } 
    } 
    if(window.opener.document.forms[0].processName.value=='') { 
     window.opener.document.forms[0].lovProcessType.value = ''; 
     window.opener.document.forms[0].pevent.value = ''; 
    } 
    window.opener.document.forms[0].submit(); 
    closeConn(); 
} 

function closeConn() 
{ 
     self.close(); 
} 

Aber wenn die Seite in Firefox geladen öffnet, sind den Fehler als window.opener bekommen ist in der 2. Zeile der returnselect null() Funktion

function returnSelect() 
    { 
     window.document.forms[0].choice_processType.value ; 
     --> window.opener.document.forms[0].pevent.value = 'getprocessName'; 

Beliebig Idee, wie zu überwinden diesen

Vielen Dank im Voraus ...

+0

http://stackoverflow.com/questions/944066/firefox-window-opener-issue – sergzach

+0

@sergzach: die Seite hat keine direkte Antwort ... können Sie in meinem Fall helfen – siva

+0

Bitte lassen Sie mich weiß, ob meine Antwort nicht nützlich ist. Es ist eine einzige Idee, ich weiß nicht 100% Entscheidung. – sergzach

Antwort

3

es nur für "parent.window.opener" funktioniert und nicht für "window.opener"

Dank Sergzach für Ihre Zeit

0

Versuchen Sie, die nächste Firefox-Erweiterung deaktivieren Sie: Tabbrowser Extensions (TBE).

Es scheint, dass es das erwähnte Problem gibt, wenn man es benutzt.

+0

@siva Die Erweiterung, wie ich weiß, ist nicht mit Firefox installiert. Aber manche Leute benutzen es. – sergzach

+0

Ich überprüfte mit IE auch .. dort auch seine nicht funktioniert und bekommen "window.opener ist null" Fehlermeldung – siva

+0

@siva Es gibt ein völlig anderes Problem. Ich dachte, dass du nur über Firefox gesprochen hast. – sergzach

5

Sie öffnen ein Fenster von einer anderen Domäne/Subdomain. In diesem Fall haben Sie keinen Zugriff auf das übergeordnete Fenster, das das Zielfenster geöffnet hat, da Sicherheitsberechtigungen dies nicht zulassen.

Zum Beispiel, wenn Sie eine Seite von öffnen site2.com von einer Seite von site1.com das Zielfenster hat es Opener null ist.

Wenn Sie eine Seite von öffnen site2.site.com von einer Seite von site1.site.com es ist auch kein Zugriff, weil diese zwei verschiedene Standorte.

Aber wenn Sie eine Seite von site.com Seite von Seite von site.com oder Seite von subdomain.site.com von Seite von site.com Sie haben den Zugang, weil Sicherheitsberechtigungen erlauben Das.

Hinweis: vielleicht 'prcsTypeSelectionPopup? Event = prcsTypeSelection' ist falsch. Ändern Sie es richtigen Pfad ohne Domäne zu verankern, zum Beispiel:?

/prcsTypeSelectionPopup event = prcsTypeSelection

+0

bin in der Lage, das Popup zu öffnen, und wenn ich auf die Schaltfläche im untergeordneten Fenster klicke, um einige Daten an das übergeordnete Fenster zu senden, bekomme ich nur die Fehlermeldung "window.opener is null "und das untergeordnete Fenster schließt nicht – siva

+0

@siva Also, hast du das Problem nicht an anderen Stellen? Nur in Button-Klick-Handler? – sergzach

+0

@siva Ich sehe keinen Körper von openWindow(), es ist schwierig, weiter zu helfen. – sergzach

Verwandte Themen