Wpis z mikrobloga

Pytanie do ekspertów.

Słabo znam jeszcze javascript i jquery, stąd nie mogę nijak poradzić sobie z pewnym zadaniem. Otóż mam na stronie 3 suwaki zrobione w jQuery. Mam też tabelkę, w której są radio button. W zależności od ustawień suwaki, musi zmienić się zaznaczony radio button.

Zrobiłem tak, by był zaznaczony drugi radio button, gdy wartość suwaka jest większa niż 3, chciałem też zrobić by był zaznaczony pierwszy radio button, gdy wartość jest mniejsza niż 3, ale to nie działa tak jak trzeba. Szukać w google potrafię, ale brakuje mi słów wg których mam szukać rozwiązania.

Mój kod wygląda tak: http://textsnip.com/dnv20i/jscript

Pytania na początek:

1. Czy w dobrym miejscu umieszczam te ify?

2. Może muszę to napisać funkcji i wywoływać ją gdy zmieniam wartość suwaka?

3. To jest sprawdzenie tylko jednego suwaka, mam jeszcze dwa, więc dojdą kolejne porównania w ifach i będę musiał to skopiować też do kodu innych suwaków, da się to jakoś zoptymalizować?

Aha, wszystko działać ma jak na tej stronie: https://www.seb.lt/verslo-klientams/pagrindines-paslaugos/pasirinkite-tinkama-paslaugu-plana Wystarczy mi odpowiedź na pytania co zadałem, ewentualnie podpowiedź, dlaczego to cholerstwo nie pracuje jak trzeba, a dalej już sobie poradzę.

#programowanie #javascript #jquery #webdev
  • 37
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Dreszczyk: To po litewsku karaluchy. Robię modyfikacje na stronie firmy, która zabija insekty.

@fotexxx: znalazłem jQuery ui slider na stack overflow. Nie mam kodu online, ale mogę wrzucić na textsnip html, tylko będzie tego cholernie dużo.

Cały JS odpowiedzialny za suwaki: http://textsnip.com/kxlose/html

HTML: http://textsnip.com/ljne88/html od linijki 192 do 329. Większość kodu nie jest moje, więc proszę się nie czepiać, że wygląda jakby uczeń to robił.
  • Odpowiedz
@fotexxx: Dobra. Teraz widzę. Poszukam jeszcze co jaką różnicę daje range: "max" i range: "min".

Dziękuję za podpowiedź z ui.value.

Jeszcze jedno pytanko, w jaki sposób mam zrobić takie
  • Odpowiedz
vartosc innych sowakow pobieraj w taki sposob jak pobierales wczesniej...tylko w aktualnym ktory przesowasz pobieraj wartosc z ui.value.

Najlepiej napisz sobie funkcję typu get_current i w petli each pobieraj dane o pozostalych :)

Kumasz o co mi chodzi?:)
  • Odpowiedz
@fotexxx: @mariecziek: Imo nie ma nic złego w pobieraniu wartości suwaka inaczej niż przez ui.value. Oficjalna dokumentacja daje jeszcze jedną metodę do sprawdzenia wartości suwaka:

$( ".selector" ).slider( "value" );

zarówno to jak i twoje .slider("option", "value"); zwraca to samo.
  • Odpowiedz
@fuuYeah: nie bardzo...sprawdź sobie:) w ten sposób $( ".selector" ).slider( "value" ); to sobie można pobrać poza funkcją a nie w funkcji która inicjalizuje slider...sprawdź sobie dlaczego. Dlatego mu nie działało. Dostawał nieprawidłowy wynik dla slidera którym aktualnie poruszał
  • Odpowiedz
@fotexxx: No właśnie bardzo, on to wywołuje w callbacku "slide" a slide nie wywołuje się przy inicjalizacji slidera a dopiero podczas przesuwania suwaka więc w tym czasie wszystko już działa i slidery już dawno istnieją.

@fotexxx: @mariecziek: anyway, ja bym zrobił
  • Odpowiedz
@fotexxx: LOL no ale co mam zobaczyć? :D przecież twój kod działa tak jak powinien co tylko potwierdza to co napisałem że w .slide można odwołać się do .slider("option", "value"); a to że najpierw wywołuje się slide a dopiero potem jest zmieniana wartość to już inna sprawa :)
  • Odpowiedz
@fuuYeah: no :) i dlatego dla aktualnego slidera powinien pobierać wartośc z ui.value a dla pozostałych wywołać funkcje poniżej w celu zebrania wartości z posotalych i zrobienia z danymi co chce :)
  • Odpowiedz