Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Lista wyboru i otwieranie w nowym oknie
Forum PHP.pl > Forum > Przedszkole
Mlody993
Witam,
mam taki kod:

<form
action="../cgi-bin/redirect.pl"
method=post onSubmit="return dropdown(this.gourl)">
<select name="gourl">
<option value="">Wybierz...

<option value="www.pcworld.pl">link1
<option value="www.google.pl">link2
<option value="www.digit.pl">link3
<option value="www.digit.pl">link4

</select>

<input target="_blank" type=submit value="Przejdz">
</form>

I jak zrobić w tym, aby po wyborze linku i wciśnięciu "przejdz" otworzyło wybraną stronę w nowym oknie? Nie wiem w którym miejscu dać target="_blank" .
Fifi209
No to javascript. ;d

Zamiast przesyłać formularz spróbuj z funkcją w js:

onclick/onsubmit

i potem window.open
Mlody993
Czyli mój kod ma wyglądać tak:

Cytat
<form
action="../cgi-bin/redirect.pl"
method=post onSubmit="return window.open(this.gourl)">
<select name="gourl">
<option value="">Wybierz...

<option value="www.pcworld.pl">link1
<option value="www.google.pl">link2
<option value="www.digit.pl">link3
<option value="www.digit.pl">link4

</select>

<input target="_blank" type=submit value="Przejdz">
</form>


Coś takiego?
Maciekbjw
Ta, tylko zobacz sobie jeszcze jakie parametry przyjmuje funkcja window.open: http://www.javascript-coder.com/window-pop...ndow-open.phtml smile.gif
Mlody993
Jak mam tak:
Cytat
<form
method=post onSubmit="return window.open(this.gourl)">
<select name="gourl">
<option value="">Wybierz part...

<option value="www.pcworld.pl">Part 1
<option value="www.google.pl">Part 2
<option value="www.digit.pl">Part 3
<option value="www.digit.pl">Part 4

</select>

<input type=submit value="Pobierz">
</form>


to mi otwiera stronę w nowym oknie ale link taki: mojastrona.pl/[object] . :/ A powinien odsyłać do linku.
Fifi209
Wymyśliłem Ci coś takiego:

  1. <head>
  2. <script type="text/javascript">
  3. function goUrl(url) {
  4. return window.open(url, '', 'height=500, width=500');
  5. }
  6. </script>
  7. </head>
  8.  
  9.  
  10. <select name="gourl">
  11. <option value="">Wybierz part...
  12.  
  13. <option value="http://www.pcworld.pl" onclick="javascript: goUrl(this.value);">Part 1</option>
  14. <option value="http://www.pcworld.pl" onclick="javascript: goUrl(this.value);">Part 2</option>
  15. <option value="http://www.pcworld.pl" onclick="javascript: goUrl(this.value);">Part 3</option>
  16. <option value="http://www.pcworld.pl" onclick="javascript: goUrl(this.value);">Part 4</option>
  17.  
  18.  
  19. </body>
  20. </html>
Mlody993
Świetne, wielkie dzięki.
kamil4u
Małe uwagi do
Kod
<option value="http://www.pcworld.pl" onclick="javascript: goUrl(this.value);">Part 1</option>
:
- nie używaj onClick w option, gdyż nie będzie to działało w IE
- zamiast tego w option ustaw zdarzenie change(w HTML onChange) i jako parametr do funkcji daj this.value
- "java script:" jest tu zbędna
- najlepiej w ogóle pozbyć się atrybutów typu onChange/onClick na rzecz:
Kod
//po załadowaniu się DOM-u lub dokumentu
referencja_do_elementu.onchange = funkcja; //lub
referencja_do_elementu.onclick = function(x){ alert(x); };
Fifi209
Kto by się tam przejmował głupim ie? Ja to bym go w ogóle zablokował, usunął itd. itd. ;d
kamil4u
Cytat
Kto by się tam przejmował głupim ie?

Yyyy...... 50% użytkowników Internetu?
Cytat
Ja to bym go w ogóle zablokował, usunął itd. itd. ;d

Z tym to się akurat zgodzę tongue.gif - choć IE8 już w miarę sobie radzi smile.gif - może za x lat nie będziemy musieli pisać hack-ów na tą "przeglądarkę" smile.gif
Fifi209
Cytat(kamil4u @ 29.03.2009, 14:28:55 ) *
Yyyy...... 50% użytkowników Internetu?

Z tym to się akurat zgodzę tongue.gif - choć IE8 już w miarę sobie radzi smile.gif - może za x lat nie będziemy musieli pisać hack-ów na tą "przeglądarkę" smile.gif


Jak pisałem stronę z wymaganą obsługą js (skrypty i ajax) i cookie. To w ogóle zablokowałem dostęp przeglądarce identyfikującej się jako Microsoft Internet Explorer. ;d wyświetlam komunikat o tym, że aby zobaczyć należy zainstalować ff lub operę. ;d
kamil4u
Cytat
wyświetlam komunikat o tym, że aby zobaczyć należy zainstalować ff lub operę. ;d

Pogratulować... na pewno ktoś zmieni przeglądarkę, żeby zobaczyć Twoją stronę....

Po za w tym wypadku onChange jest lepszy niż onClick - mniej kodu, a co do standardów do nie pamiętam, ale chyba też zaleca się używać onChange
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.