Jak pobrać informacje z nowo otwartego okna?

0

Witam,

mam taką sytuację, że na pierwszej stronie klikam button, który powoduje otwarcie się nowego okna z listą pewnych elementów.

W nowym oknie zaznaczam wybrane elementy z listy. Teraz po przez naciśnięcie buttona w nowym oknie chciałbym przekazać informację o zaznaczonych elementach do pierwszego okna. Tylko nie wiem za bardzo jak to zrobić i jak to poprawnie nazwać, żeby jakieś przykłady/informacje znaleźć w google.

poniżej moja funkcja otwierająca nowe okno i przekazująca do niego funkcję "fun":

function openThis() {

            var win = window.open("About.aspx");

            win.onload = function () {
                win.fun = function () {
                    console.log("test");
                }
            }
            
        }

tutaj jest funkcja, która się uruchamia po kliknięciu buttona w nowym oknie:

function fun2() {
            fun();
        }

czy w nowym oknie nie powinien się pojawić napis "test"?

aktualnie to rozwiązanie mi nie działa i nie wiem za bardzo co robię źle.

0

ja w takich przypadkach uzywam tzw okna modalnego (jquery modal => http://jqueryui.com/dialog/#modal) i tam wpakujesz sobie czy to formularz czy dane informacyjne z ta lista. Zaleta tego jest ze wszystko dzieje sie w jednym oknie przegladarki, wiec nie ma problemu z przesylaniem zmiennych miedzy soba.

0

U mnie jest wymóg, żeby to działo się w dwóch osobnych oknach.

0

Przepraszam bardzo to rozwiązanie mi działa.

Po kliknięciu buttona w nowym oknie w pierwszym oknie pojawia jest tekst "test", czyli jest prawidłowo.

Problem pojawia się tylko w IE 9 i wyższych, gdy klikam button w nowym oknie to pojawia się komunikat, że funkcja "fun" jest niezdefiniowana.

Czy wie ktoś jak rozwiązać ten problem, albo jak szukać tego w języku angielskim w google?

0

możesz wywołać funkcję parenta przez:

window.opener.fun()

ewentualnie, użyj window.postMessage() do wysłania i event message do odebrania wiadomości przekazywanej między oknami - to dość nowa funkcjonalność w przeglądarkach, ale działa również między stronami w różnych domenach

dodanie znacznika <code class="jquery"> - furious programming

1 użytkowników online, w tym zalogowanych: 0, gości: 1