ďťż

[JS] Wartość w liście rozwijanej

       

Podstrony


telcocafe

Mam sobie taką listę rozwijaną:

<select onclick="wykonaj()"> <option value="Pierwsza opcja">Pierwsza opcja</option> <option value="Druga opcja">Druga opcja</option> </select>

Chciałbym w funkcji wykonaj() przypisać do jakiejś zmiennej opcję wybraną przez usera. Jak to zrobić?



wykonaj(this.value)?

Dzięki :-)

Jeszcze jedno podobne pytanie.

Jak pobrać wewnątrz funkcje tą wartość. Mam na przykład tak:

<form> <select> <option value="Pierwsza opcja">Pierwsza opcja</option> <option value="Druga opcja">Druga opcja</option> </select> <input type="submit" onclick="wykonaj()" /> </form>

... i teraz wewnątrz funkcji wykonaj() chciałbym przypisać do zmiennej wartość wybraną w select.



trzeba tego selecta jakoś nazwać

<form name="forma"> <select name="lista"> <option value="Pierwsza opcja">Pierwsza opcja</option> <option value="Druga opcja">Druga opcja</option> </select> <input type="submit" onclick="wykonaj(forma.lista.value)" /> </form>

powinno być cacy ;)
Użytkownik mickers edytował ten post 01 wrzesień 2007, 17:36
Dzięki (10 znaków)

A jeżeli to nie jest select tylko Textarea albo Input to jak tą wartość pobrać? Próbowałem zrobić to tak jak z selectem, ale coś nie wychodziło :-)
Użytkownik Capellini edytował ten post 01 wrzesień 2007, 19:48
Nadaj konkretnemu elementowi ID i odwołuj się do niego :) np.<script type="text/javascript"><!--// function wykonaj() { alert(document.getElementById('sel').value); } //--></script> <select id="sel"> <option value="Pierwsza opcja">Pierwsza opcja</option> <option value="Druga opcja">Druga opcja</option> </select> <input type="submit" onclick="wykonaj()" />no i winno grać ;)
Użytkownik DJ_ProG edytował ten post 01 wrzesień 2007, 19:59
@DJ_Prog, ja prosiłem, żeby to było z inputem albo textarea, ale chyba tam się pomyliłem pisząc, że z input i textarea nie można tak jak z selectem bo mój błąd chyba tkwi w czym innym. No więc próbowałem w taki sposób:

<script ... > function wykonaj(inp) { var zmienna = inp; ... } </script> ... <form name="forma"> <input type="text" id="inp" name="inp" /> <input type="submit" onclick="wykonaj(forma.inp.value)" /> </form>

i jeszcze tak próbowałem:

<script ... > function wykonaj() { var zmienna = document.getElementById('inp').value; ... } </script> ... <form name="forma"> <input type="text" id="inp" /> <input type="submit" onclick="wykonaj()" /> </form>

// Czy przyczyną tego, że to nie działa może być to, że ta forma jest tworzona "dynamicznie", tzn. tak, że po kliknięciu na inny przycisk wywołuje się funkcja, która przy pomocy getElementById dopisuje do warstwy ten kod:

<form name="forma"> <input type="text" id="inp" name="inp" /> <input type="submit" onclick="wykonaj(forma.inp.value)" /> </form>

... lub w przypadku tej drugiej próby, taki:

<form name="forma"> <input type="text" id="inp" /> <input type="submit" onclick="wykonaj()" /> </form>

?
Użytkownik Capellini edytował ten post 02 wrzesień 2007, 10:19
Jeśli tworzysz dynamicznie obiekty, to wiedz, że na stronie może być tylko jeden element o danym IDzie. W związku z czym, jeśli chcesz za jego pomocą pobrać wartość, funkcja głupieje bo nie wie do czego ma się odwołać :P

Co do odwoływania się tego pierwszego, może spróbój poprzez wstawienie na początku document., np.document.formaa.inp.value???


Jeśli tworzysz dynamicznie obiekty, to wiedz, że na stronie może być tylko jeden element o danym IDzie. W związku z czym, jeśli chcesz za jego pomocą pobrać wartość, funkcja głupieje bo nie wie do czego ma się odwołać tongue.gif Mam 3 inputy, każdy inne ID.


Co do odwoływania się tego pierwszego, może spróbój poprzez wstawienie na początku document

Próbowałem. Próbowałem też tak: document.forms["forma"].inp.value

Zrezygnowałem z robienia tego bo właściwie to miał być tylko taki bajer. Bez tego się obejdzie.

P.S. Dj_Prog, jak to działa?
Użytkownik Capellini edytował ten post 02 wrzesień 2007, 14:10
Hmm, nie mam pojęcia, dlaczego odwoływanie się nie działa :/
Weź gdzieś wrzuć kod stronki albo podaj link do niej, a pokombinujemy :D

PS: Jak? Czary mary + TVN + GD :P
PS2: Jak piszesz mój nick, rób to poprawnie :P Bo niby literówki, a mają ważne znaczenie ;)

@down: PHP xF Poszukaj trochę, a dowiesz się :)
Użytkownik DJ_ProG edytował ten post 03 wrzesień 2007, 18:21
Jak już wyżej pisałem, zrezygnowałem :D


Jak? Czary mary + TVN + GD tongue.gif

Czary mary czyli co?

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.