Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript][PHP]Połączenie JS z PHP, Tworzenie linku
Barcelona
post 21.02.2012, 13:43:32
Post #1





Grupa: Zarejestrowani
Postów: 322
Pomógł: 15
Dołączył: 29.01.2010

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


Witam, mam taki problem, wdrażam właśnie niceURL i mam problem z JS w formularzu.

  1. echo '<form action="index.php?strona=raport&podstrona=tygodniowy" method="get"><div>W '.$week.' tygodniu nie wprowadzono żadnej produkcji! Zmiana tygodnia: <select name="week" onchange="java script:window.location=\'?strona=raport&podstrona=tygodniowy&week=\' + this.options[this.selectedIndex].value; "><optgroup label="Aktualny"><option value="'.$_GET['week'].'">'.$_GET['week'].'</option></optgroup><optgroup label="Wybierz">
  2. ';
  3. for( $weeks = 1; $weeks <= 52; $weeks++ ) {
  4. echo '<option value="'.sprintf('%02d', $weeks).PHP_EOL.'">'.sprintf('%02d', $weeks).PHP_EOL.'</option>';
  5. }
  6. echo '
  7. </optgroup></select></div></form><br/>';


Problem leży z onchange muszę zrobić coś takiego:

  1. $nurl->Url('strona=raport&podstrona=tygodniowy&week=+ this.options[this.selectedIndex].value')


No ale wiadomo że jest to bardzoo niepoprawnie, ale nie widzę sposobu na stworzenie takiego linku thumbsdownsmileyanim.gif

Prosiłbym o pomoc
Go to the top of the page
+Quote Post
nospor
post 21.02.2012, 13:49:57
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Idać na łatwiznę możesz zrobić tak:
Kod
window.location=\'/raport/tygodniowy/week/\' + this.options[this.selectedIndex].value;

Ale to jest rozwiązanie na łatwiznę smile.gif

Ciut trudniejsze, ale wg. mnie poprawne będzie tak:
w zmiennej js przechowuje adres do raportu:
pseudokod:
var zm = $nurl->Url('strona=raport&podstrona=tygodniowy&week=##')

Zauważ, że generując w php adres url nie znasz jeszcze week więc podstawiasz tam np.##
A potem w js w onchange robisz replace na zmiennej z adresem i zamieniasz tekst ## na week z select smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Barcelona
post 21.02.2012, 15:54:25
Post #3





Grupa: Zarejestrowani
Postów: 322
Pomógł: 15
Dołączył: 29.01.2010

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


To pierwsze rozwiązanie jest wystarczające. Drugie rozwiązanie daje wygodniejszy efekt, ale za dużo zabawy na taki szczegół.
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 19:49