

Odovzdávanie parametrov druhému oknu v PHP
Prajem všetkým pekný Nový rok a hneď začnem otázkou. Určite mnohí poznáte rozhranie OrangePortal so službou Môj Assistent. Ak niekomu chcete poslať SMS, tak sa to robí tak, že vo formulári zadáte text SMS a telefónne číslo. Ak nechcete zadávať číslo, tak klepnete na odkaz, otvorí sa nové okno, v ňom si vyberiete príjemcu SMS a po potvrdení sa zobrazí jeho telefónne číslo v tomto prvom formulári a nové okno sa zavrie. Tento efekt potrebujem dosiahnuť v mojej PHP aplikácii. Potrebujem niečo zadať v novom okne s tým, že sa to vloží do hlavného okna do políčok formulára. Viete mi niekto poradiť ako to urobiť, prípadne ako to nazvať, aby som aspoň mal predstavu ako to nájsť cez Google?
Funkcia showModalDialog je IE only fičúra, ktorá je síce pekná, ale bez nejakej náhrady pre ostatné prehliadače nemá na webe zmysel.
V JavaScripte môžeš otvoriť nové okno metódou window.open a v ňom môžeš pristupovať k oknu, ktoré ho otvorilo, prostredníctvom vlastnosti window.opener.
Nefungovalo by jednoduchšie riešenie? window.open sa dá brať ako popup a to môže prehliadač stopnúť. Škúšam toto a nefunguje to (neprepíše hodnotu text1):
aaa.htm
bbb.htm
Na pristupovanie k oknu používaš window.parent namiesto opener. V parent je rodičovské okno v prípade, že je obsah v (i)frame. V opener je okno, ktoré otvorilo dané okno.
Nefunguje ani tak.
Edit: Oprava, nefunguje to len v Opere. Vedel by niekto poradiť čo s tým? Potrebujem to rozchodiť v nej.
Operu nemám momentálne k dispozícii, ale určite tam je niekde konzola JavaScriptu, ktorá ti napíše presne, kde je problém.
Skúsil by som nahradiť document.form1 za document.forms.form1.
To mi neberie už žiadny prehliadač. Nie náhodou toto?
Ale toto je ekvivalentný zápis.
Skús si prejsť tie stránky validátorom, či tam nie je nejaká iná chyba, kvôli ktorej potom Opera nevie nájsť ten formulár.
Tak to máš nejaký iný prehliadač, než všetky, s ktorými som sa doteraz stretol.
Ekvivalentný zápis to je, keď to tam dáš ako reťazec, nie ako premennú.
Beriem späť, to mi funguje, asi som to mal vtedy zle refreshnuté.
Áno, malo to byť v úvodzovkách, zabudol som ich len napísať.