![]() |
![]() ![]() |
![]() |
![]() ![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 144 Pomógł: 12 Dołączył: 16.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich ! Mam taki problem, który jak podjrzewam jest banalny, jednak moja słaba znajomość jquery i js nie pozwala go rozwiązać.
Wprowadzenie: Mam formularz A, w którym znajduje się pole textarea. W formularzu jest link z graficznym tłem, który otwiera nowe okno z emotkami do donania: funkcja emo, która wyświetla nowe okno: Kod function emo(x) { $(document).ready(function() { var pos=$(x).offset(); var px=pos.top-440; var py=pos.left-240; var win=window.open('./template/emo.php','EMOTOIKONKI','toolbar=no,menubar=no,location=no,personalbar=no,scrollbars=no,directories=n o,status=no, resizable=no,width=200,height=185,top='+px+',left='+py); }) } plik emo.php:
PROBLEM ! chce uzyskać efekt taki, że po kliknięciu w emotkę pop up zostanie zamknięty a w textarea, zostanie na koncu dodany BB code tej emotki. I nie wiem jak to zrobić. Czytałem, że należy użyć window.opener - czyli referencji to obiektu rodzica, który otworzył to okno, więc jej użyłem najpierw w funkcji emo ale bezskutecznie. Dlatego stworzyłem funkcje rertunDAta pop-upa czyli: Kod function returnData(x) { window.opener.GetElementById('osobie').value+=x; this.close(); } jednak po kliknięciu w emotkę okno się nie zamyka i nic nie zostaje dopisane do pola textarea ;( Bardzo proszę o na kierunkowanie mnie co muszę zrobić, żeby poproastu zwrócić wartość z pop-upa do głównego okna i czy to można jakoś zrobić w funkcji emo ![]() Ten post edytował R4D3K 6.02.2010, 02:01:36 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
getElementById piszemy wyłącznie z małej litery o ile się nie mylę. Zobacz w konsoli błędów (menu narzędzia w FF) lub firebugu czy wypluwa jakiś błąd.
Ten post edytował lord_t 6.02.2010, 11:22:27 -------------------- |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 144 Pomógł: 12 Dołączył: 16.03.2007 Ostrzeżenie: (0%) ![]() ![]() |
Cytat getElementById piszemy wyłącznie z małej litery I działa a siedziałem nad tym tyle ![]() A tak z innej beczki jeśli można w funkcji emo przekazuje argumentem id pola do którego mają być wstawiane emotki, czy da się tą wartość jakoś przesłać do nowego okna za pomocą javascriptu ? tak żeby funkcja returnData, oprócz zwracanej wartości wiedziała jeszcze gdzie element wstawić ? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 603 Pomógł: 131 Dołączył: 24.07.2007 Skąd: Górny Śląsk Ostrzeżenie: (0%) ![]() ![]() |
open() zwraca Ci uchwyt do stworzonego okna. Możesz skorzystać z niego - ustawić sobie zmienną: uchwyt.window.zmienna='twojeid'. Zaś w funkcji returnData(x) zamiast id wpisac window.zmienna.
___ pisane z palca -------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 17.06.2024 - 08:52 |