![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 11.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam, mam pewien problem, poniżej wklejam kawałek kodu z którym mam problem... założeniem jest, aby po wybraniu któregoś wpisu z listy <select> aktywowalo przypisane mu pole/pola checkbox.
Mój problem polega na tym, że powyższy kod działa tylko na przeglądarce Firefox (na Chrome i IE w ogóle nie aktywują się checkboxy obojętnie czego bym nie wybrał z listy). Wiem że do selecta powinno się używać zamiast onclick, onchange, ale po takiej zmianie w ogóle na żadnej przeglądarce nie uzyskuje pożądanego efektu. Jakieś sugestie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
onclick przypisuje się dla SELECT a nie dla OPTION. Tyle w temacie (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
No nie do końca masz rację ~nospor (IMG:style_emoticons/default/smile.gif) Należy użyć zdarzenia (on)change, nie (on)click.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 11.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
ok czyli onclick (onchange) mam przerzucić do znacznika <select> to jest ok, tylko w takim razie jak przerobić te funkcje żeby to dzialalo. Bo teraz miałem oddzielne funkcje do każdej opcji, a teraz wszystko musze zawrzeć w 1 funkcji. I moje pytanie, jak to rozwiązać? Bo troszke mi to zmienia koncepcje...
|
|
|
![]()
Post
#5
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat No nie do końca masz rację ~nospor Należy użyć zdarzenia (on)change, nie (on)click. Chodziło mi o to, że zdarzenie ma być na SELECT a nie na OPTION.... starajmy sie czytać ze zrozumieniem (IMG:style_emoticons/default/smile.gif) duda.... a jaki masz problem? this.value bedzie zawierać wartosc opcji, którą wybrałeś - i po problemie <select onchange="alert(this.value)"> |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
To Ty staraj się czytać/pisać ze zrozumiem własne posty.
Cytat onclick przypisuje się dla SELECT To jest nieprawda. Przypisuje się onchange. Cytat Chodziło mi o to, że zdarzenie ma być na SELECT a nie na OPTION Może i o to Ci chodziło, ale tego nie napisałeś.Ew. użyj selectedIndex i w funkcji zdarzenia switch I pokaż co Ci wyszło( nawet jak nie działa ). Spróbujemy coś poprawić (IMG:style_emoticons/default/smile.gif) Ten post edytował kamil4u 11.09.2012, 14:13:53 |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Po pierwsze: no jak się czepiasz dosłownie wszystkiego....
Po drugie: onclick też można przypisać to SELECT mój ty miły kolego. Więc nie gadaj głupot, że nie można. W tym akurat przypadku wszakże lepsze jest onchange, co nie zmienia faktu, że onclick też można. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 11.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
ok, troszke poprawilem i już działa (IMG:style_emoticons/default/smile.gif) nie pomyślałem w sumie żeby to zrobić na switch, ale może to dobra opcja (doczytam później jak w JS wygląda składnia switcha), na chwile obecną kod wygląda tak:
EDIT. Pojawił się pewien problem... wcześniej nie było wartości value wiec formularz wysylal przez POST wartość która była pomiędzy <option>. Teraz jest przypisane value... da się to rozwiązać za pomocą np. id zamiast value? No nie wiem... tak żebym nie musiał pisać x warunków (do każdej opcji oddzielny)? Ten post edytował duda007 11.09.2012, 14:39:01 |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A nie możesz do value wkładać to co należy, czyli wartosci option zamiast all,sw1 i sw2? Przecież to co teraz robisz jest bezsensu... value ma odzwierciedlać value a nie ułatwiać budowanie warunków (IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 11.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
@nospor, ale jak widzisz, potrzebne mi jest w sumie 3 opcje, a w takim przypadku jak pod value bede miał inne opcje, bede musiał robić 7 warunków (w tym 4 takie same). Próbowałem zrobić taki warunek (oczywiście po przypisaniu do value odpowiednich wartości):
ale niestety nie działa takie coś (IMG:style_emoticons/default/wink.gif) Mogę oczywiście zrobić 7x if, albo switch z 7 opcjami, ale to raczej w tym przypadku droga na około... |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
To zrób tak jak ja Ci radziłem. Nie przypisuj value, a skorzystaj z selectedIndex
--edit-- Aczkolwiek fakt faktem, że jak przypiszesz value i zrobisz tak jak radzi ~nospr będzie lepiej pod względem HTML-owskim (IMG:style_emoticons/default/smile.gif) Ten post edytował kamil4u 11.09.2012, 15:10:17 |
|
|
![]()
Post
#12
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
O to:
if ((h == "Opcja1") || (h == "Opcja2")){ ... } powino działać bez problemu. Pewnie zrobiłeś jakiś głupi błąd. Pokaż cały kod |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 5 Pomógł: 0 Dołączył: 11.09.2012 Ostrzeżenie: (0%) ![]() ![]() |
faktycznie zrobiłem głupi błąd... już poprawiłem i działa jak należy (IMG:style_emoticons/default/smile.gif)
Mianowicie mój błąd polegał że w pierwszym warunku dałem
i wydaje mi sie że tutaj był błąd i nie sprawdzało z jakiejś przyczyny nawet drugiego warunku (IMG:style_emoticons/default/wink.gif) ale już działa jak trzeba, dziękuje za pomoc (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat i wydaje mi sie że tutaj był błąd i Tu się nie ma co wydawać.... to jest dość oczywiste (IMG:style_emoticons/default/wink.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 15.10.2025 - 09:33 |