Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Popup i JavaScript - trochę skomplikowane, więcej w środku :)
miedzna
post
Post #1





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Chodzi o to, że w pliku głównym wywołuję popupa następująco:


index.html

  1. <script language="JavaScript" type="text/JavaScript">
  2.  
  3. function check(){
  4. if(document.getElementById('opcja1').checked == true){
  5. newwindow=window.open("popup.html","","width=190,height=230","left=100,top=100")
  6. newwindow.creator=self
  7. }
  8.  
  9. if(document.getElementById('opcja2').checked == true){
  10. newwindow=window.open("popup.html","","width=190,height=230","left=100,top=100")
  11. newwindow.creator=self
  12. }
  13. }
  14.  
  15.  
  16. <input type="text" name="www" id="www">
  17.  
  18. <input type="radio" name="skad" onclick="javascript:check();" id="opcja1">opcja1
  19. <input type="radio" name="skad" onclick="javascript:check();" id="opcja2">opcja2


wyskakuje popup w zależności od zaznaczonego radio

popup.html:

  1. function loadurl(url){
  2. window.creator.location="http://localhost/"
  3. window.close()
  4. }
  5. <a href="#" target="_top" onClick="loadurl(this.href);return false" onfocus="blur();">aaa</a>


Teraz popup po kliknięciu w link zamyka się i przeładowuje stronę rodzica, czyli index.html

Chcę uzyskac trochę inną funkcjonalność, otóż chcę, żeby po kliknięciu w link w popupie, popup się zamykał i w polu tekstowym o nazwie i id www wskoczyła jakaś wartość z popupa smile.gif nie wiem, czy zrozumiale opisałem. Chodzi o podobną funkcjonalność jak wybieranie daty z kalendarzy popupowych.

Pozdrawiam.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
qqrq
post
Post #2





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Na pierwszy rzut oka wydaje się nic prostszego - obiekt JS document jest składową obiektu window, więc wykonujesz np.:

  1. window.creator.document.getElementById('IdJakiegośElementuZGłównejStrony').value = document.getElementById('IdElemetuZPopupa').value;


Powinno pomóc.


--------------------
Go to the top of the page
+Quote Post
miedzna
post
Post #3





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Zrobiłem jak napisałeś:

wywołuję popupa:

  1. <script language="JavaScript" type="text/JavaScript">
  2.  
  3. function check(){
  4. if(document.getElementById('opcja1').checked == true){
  5. newwindow=window.open("popup.html","","width=190,height=230","left=100,top=100")
  6. newwindow.creator=self
  7. }
  8.  
  9. if(document.getElementById('opcja2').checked == true){
  10. newwindow=window.open("popup.html","","width=190,height=230","left=100,top=100")
  11. newwindow.creator=self
  12. }
  13. }
  14.  
  15.  
  16.  
  17. <input type="text" name="www" id="www">
  18.  
  19. <input type="radio" name="skad" onclick="javascript:check();" id="opcja1">opcja1
  20. <input type="radio" name="skad" onclick="javascript:check();" id="opcja2">opcja2
  21. </form>


no i sam popup:

  1. function loadurl(){
  2. window.creator.document.getElementById('www').value = document.getElementById('aaa').value;
  3. window.close();
  4. }
  5.  
  6. <form action="popup.html">
  7.  
  8. <input type="text" name="aaa" id="aaa">
  9.  
  10. <input type="submit" name="submit" onclick="loadurl();">
  11.  
  12. </form>


Klikam w przycisk i nic sad.gif
Go to the top of the page
+Quote Post
qqrq
post
Post #4





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


A patrzyłeś czy wywala jakieś byki?


--------------------
Go to the top of the page
+Quote Post
miedzna
post
Post #5





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Grzebałem się z tym i wyszło mi prawie to, czego potrzebuję. Odpalam popupa plikiem index.html, kod poniżej:

index.html

  1. <script language="JavaScript" type="text/JavaScript">
  2.  
  3. function check(){
  4. if(document.getElementById('ttt').checked == true){
  5. newwindow=window.open("popup.html","","width=390,height=230","left=100,top=100")
  6. newwindow.creator=self
  7. }
  8. }
  9.  
  10.  
  11. <input type="radio" name="skad" onclick="javascript:check();" id="ttt">ttt
  12. <input type="radio" name="skad" onclick="javascript:check();" id="ddd">ddd
  13. <br>
  14. <input type="text" name="www" id="www" disabled>
  15. </form>



teraz mam popupa:

popup.html

  1. function loadurl(url){
  2. window.creator.document.getElementById('www').value = document.getElementById('aaa').value;
  3. window.close();
  4. }
  5. <a href="#" target="_top" id="aaa" onClick="loadurl(this.href);return false" onfocus="blur();">Link numer 1</a>


i w nim link, po kliknięciu w link popup się zamyka, a w polu textowym w pliku index.html powinno wskoczyć "Link numer 1", czyli nazwa linku, a wskakuje "undefined".
Co muszę zmienić, żeby zamiast "undefined" wskakiwała nazwa linku?

Dzięki.
Go to the top of the page
+Quote Post
qqrq
post
Post #6





Grupa: Zarejestrowani
Postów: 418
Pomógł: 8
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


No to teraz zajrzyj sobie tutaj i zobacz co powinieneś wstawić zamiast "value". smile.gif


--------------------
Go to the top of the page
+Quote Post
miedzna
post
Post #7





Grupa: Zarejestrowani
Postów: 401
Pomógł: 1
Dołączył: 10.03.2004
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Otóż to smile.gif

Dziękuję bardzo!!!

Wszystko smigalo, do momentu jak np. plik popup.php przyjal wartosc popup.php?a=b, wtedy jzu przestaje dzialac, co moze byc przyczyna?

Wyskakuje komunikat, ze IE nie moze odnalesc popup.php?a=b.
Go to the top of the page
+Quote Post
gordon34
post
Post #8





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 7.07.2009

Ostrzeżenie: (0%)
-----


czesc.
znalazlem wreszcie rozwiazanie mojego problemu mam nadzieje.
otoz jestem zielony z JS i nie do konca wiem co nalezy wpisac "zamiast" value tak jak pisze qqrq
Cytat
No to teraz zajrzyj sobie tutaj i zobacz co powinieneś wstawić zamiast "value"

czy ktos by mogl podpowiedziec?

a czy bedzie to dzialalo w przypadku gdy w okienku pop-up jest formularz do dodawania rekordow do bazy mysql i chcialbym zeby po wcisnieciu "dodaj" przeszlo mi do skryptu dodawania "insert into" a nastepnie ten swiezo dodany rekord wrzucony w odpowienie pole na stronie index.html (przykladowo) ?

podpowiedzcie
pozdrawiam

dobra, juz to zczailem z tym "value"

ale dalsza czesc zapytania jest nadal wazna.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 11:01