Thread View: pl.comp.lang.javascript
6 messages
6 total messages
Started by Tantal
Fri, 04 Jan 2002 22:28
eval() i <A HREF>; window.location() ?
Author: Tantal
Date: Fri, 04 Jan 2002 22:28
Date: Fri, 04 Jan 2002 22:28
50 lines
1934 bytes
1934 bytes
Cześć!
Mam taki problem.
Muszę zależnie od różnych działań użytkownika przekazywać różne wartości
parmetrów do PHP przy pomocy
tego samego linku.
Wymyśliłem dwa sposoby, ktore teoretycznie powinny działać.
1.
Funkcja mniej więcej taka:
function reLoad(a) {
var a,replace ;
replace = "index.php?a=" + a + ";" ;
eval(replace) ;
}
a wkodzie HTML wywołuje przykładowo:
<A HREF="javascript:reLoad(jakasZmienna)></A>
gdzie jakaśZmienna to wcześniej ustalona wartoś np. w wyniku klikania
poróżnych elementach strony.
Niestety badziew nie działa.
2.
Funkcja :
function reLoad(a) {
var a,nowyAdres ;
nowyAdres = "index.php?a=" + a + ";" ;
window.location(nowyAdres) ;
}
natomiast w HTML:
<A HREF="" onClick="reLoad(jakasZmienna)">
Tym razem strona się przeładowuje, ale nie chce przekazywać parametrów do
PHP.
Poczyniłem pewne eksperymenta (wpisałem brutalnie
window.location(index.php?a=AKUKU!!;) do onClicka) i również
się nie udało.
Z góry dzięki.
Re: eval() i <A HREF>; window.location() ?
Author: Scream
Date: Sat, 05 Jan 2002 11:09
Date: Sat, 05 Jan 2002 11:09
9 lines
1080 bytes
1080 bytes
> a wkodzie HTML wywołuje przykładowo:
> <A HREF="javascript:reLoad(jakasZmienna)></A>
nie powinno byc przypadkiem reLoad("jakasZmienna") ?
--
regards,
scream (at)w.pl
Re: eval() i <A HREF>; window.location() ?
Author: kraju
Date: Sat, 05 Jan 2002 17:18
Date: Sat, 05 Jan 2002 17:18
20 lines
1551 bytes
1551 bytes
> Wymyśliłem dwa sposoby, ktore teoretycznie powinny działać.
> function reLoad(a) {
> var a,replace ;
>
> replace = "index.php?a=" + a + ";" ;
> eval(replace) ;
hmm a co ma byc wynikiem wykonania stringa np"index.php?a=xxx;"
czy nie chodzi ci przypadkiem o window.location=replace???
> 2.
>
> Funkcja :
>
> function reLoad(a) {
> var a,nowyAdres ;
>
> nowyAdres = "index.php?a=" + a + ";" ;
> window.location(nowyAdres) ;
a może j.w
Re: eval() i <A HREF>; window.location() ?
Author: Zbigniew Braniecki
Date: Sat, 05 Jan 2002 23:07
Date: Sat, 05 Jan 2002 23:07
20 lines
1555 bytes
1555 bytes
> nie powinno byc przypadkiem reLoad("jakasZmienna") ?
Zdecydowanie nie powinno :)))
Wszelkie adresy zaczynajace sie od javascript: przegladarki takie jak IE czy
Netscape traktuja jako parsowanie linii JS.
Jako przyklad podam Ci - wejdz na http://alladyn.art.pl i napisz w adresie
javascript:alert(STPE.v)
Dopiero kiedy pomijasz to wtedy ryzykujesz ze przegladarka wyswietli strone
http://reLoad() zamiast wywolac funkcje :)))
A dla autora pytania:
Nie testuj na localu. Windows pomija wszelkie zmienne Query Stringa na dysku
lokalnym, albo postaw serwer, albo testuj na serwerze zewnetrznym.
pozdr.
Gandalf
--
Alladyn Team (http://alladyn.art.pl) proud member
Re: eval() i <A HREF>; window.location() ?
Author: Tantal
Date: Sun, 06 Jan 2002 12:03
Date: Sun, 06 Jan 2002 12:03
36 lines
2025 bytes
2025 bytes
> > replace = "index.php?a=" + a + ";" ;
> > eval(replace) ;
> hmm a co ma byc wynikiem wykonania stringa np"index.php?a=xxx;"
> czy nie chodzi ci przypadkiem o window.location=replace???
nocóż tu objawiło się moje nie do końca zrozumienie jeśli chodzi o funkcję
eval().
wyszło mi że po wywołaniu funkcji tekst "javascript:reLoad(costam)" powinien
zostać zastąpiony przeztego stringa, ktorego
definiuje w replace. Tak nie jest.
Co do windows.location() to rzeczywiscie powinno byc windows.location =
sorry jak pisalem pytanie to mi sie pochrzanilo z windows.open
dzieki za odzew
temat jest nurtujacy, przynajmniej dla mnie wiec pozwolilem sobie zadac
kolej pytanie.
> > 2.
> >
> > Funkcja :
> >
> > function reLoad(a) {
> > var a,nowyAdres ;
> >
> > nowyAdres = "index.php?a=" + a + ";" ;
> > window.location(nowyAdres) ;
> a może j.w
>
>
>
>
>
Re: eval() i <A HREF>; window.location() ? ROZWIAZANIE
Author: Tantal
Date: Sun, 06 Jan 2002 12:13
Date: Sun, 06 Jan 2002 12:13
25 lines
1689 bytes
1689 bytes
Ostatecznie problem rozwiazalem. Okazalo sie ze pomylilem sie troche
przy windows.location
Dzieki.
Jako serwer mam Apacha i dziala.
Dla potomnosci zamieszczam dzialajaca wersje funkcji.
function reLoad() {
replace = "window.location = 'http://localhost/test/index.php?a=wartosc_a;'"
;
eval(replace);
}
a w kodzie zamieszczam
<A HREF="javascript:reLoad()" >jakis_link</A>
strona sie przeladowuje i przekazuje parametry.
Dzieki.
Nota bene co oznacza komunikat o bledzie "nie obsluguje kolekcji" ?
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads