Autor Zpráva
Hejdík
Profil *
Ahoj,
mam takovej problém - pomocí metody window.open() otevírám okno s formulářem a potřebuju, aby, když je tento formulář odeslaný, se obnovila původní stránka.

Tohle mi fungovalo pouze v Opeře:

function addContact(id)
{
win_hnd = window.open("add.php?id="+id+", "repair", "width=420,height=230,menubar=no,resizable=no,right=0,top=0");

win_hnd.onunload = function() {
alert("OK");
location.reload(true);
}
return false;
}
peta
Profil
Hejdík
3 otazky:
Jak ti to fungovalo v opere?
A jak by to melo fungovat?
A jak to funguje jinde?
dalsi:
Co hlasi JS konzoly danych prohlizecu?
Nemas nahodou zablokovane v prohlizeci akce onload / onunload pro objekt window?

win_hnd.onunload
... do okna s na ukonceni nacitani spusti neco.
function() {
alert("OK");
location.reload(true); }
... to neco je funkce, ktera pracuje s aktualnim oknem. Aktualni okno je
"window", aktualni okno v tomto pripade ma name=repair a odkaz na nej bys nasel v "win_hnd".
Cili podle tohoto zapisu naprosto spravne ma obnovit okno "repair" v "win_hnd".
Coz mi prijde jako zmatene akce obnovovat prave vytvorene okno dokola.
Podle tebe to tedy dela co?
Hejdík
Profil *
No mam okno1, ve kterým je odkaz, na kterej když klikneš, tak se spustí funkce addContact(). Otevře se okno win_hnd a já potřebuju, aby se po uzavření okna win_hnd obnovilo okno1. V Opeře to takhle fungovalo (i když pouze s tim alertem, ale budiž) - konzole nehlásila žádnou chybu. V Exploreru nevyskočí ani ten alert...
Bubák
Profil
Tak refreshni opener okno při unonload okna win_hnd.

V Opeře to takhle fungovalo (i když pouze s tim alertem, ale budiž)
To cos tu dal, akorát vyhazuje alerty při otevírání a zavírání okna ve Firefoxu a Safari, jinak to nic nedělá.
Hejdík
Profil *
Super, ten opener jsem potřeboval vědět.
Dík moc!

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: