2009-07-06 13 views
0

In der Django-Funktion showRelatedObjectLookupPopup möchte ich eine Funktion an eine Schaltfläche im neu geöffneten Fenster binden, aber ich weiß nicht, wie ich auf das neue Fenster verweisen soll. Hier ist was ich versucht habe:Wie kann jQuery auf ein neu geöffnetes Fenster verweisen?

function showRelatedObjectLookupPopup(triggeringLink) { 
// other function stuff omitted 
    var name = triggeringLink.id.replace(/^lookup_/, ''); 
    name = id_to_windowname(name); 
    var win = window.open(href, name, 500, 700, resizable=yes, scrollbars=yes'); 

    win.onload = function() { 
     $(document).ready(function() { 
       $("input.default").hover(function() {alert('hovered')})})}; 
    win.focus(); 
    return false; 
} 

Aber das bindet an die Schaltfläche im ursprünglichen Fenster.

+0

Sie * sollten * (wie in, von mir nicht getestet) in der Lage sein, $ (win.document) .ready (function() {...}); zu verwenden, anstatt eine anonyme Funktion zuzuweisen um zu gewinnen. $ (document) .ready() wurde als Ersatz für onload() erstellt, aber ich bin nicht sicher, wie gut es für andere Fenster funktioniert. – ken

Antwort

1

Ich glaube, Sie beziehen sich auf das Dokument des aktuellen Fensters, wenn Sie verwenden

win.onload = function() { $(document).ready(... 

versuchen Sie dies:

win.onload = function() { $(win.document).ready(... 

und ebenfalls, einen Kontext zu Ihrem Eingangswähler geben:

$("input.default", win.document).hover(... 
+0

Das ist es. Danke vielmals. – Mitch

Verwandte Themen