TwojePC.pl © 2001 - 2024
|
|
A R C H I W A L N A W I A D O M O Ś Ć |
|
|
|
[jQuery] Jak modyfikować dropdown select, tzn ukrywać i pokazywać opcje? , kubazzz 23/01/09 22:38 mam coś takiego:
<select>
<option value="1">jeden</option>
<option value="2">dwa</option>
<option value="3">trzy</option>
<option value="4">cztery</option>
itd
</select>
teraz chciałbym, aby w zależności od jakiejś tam akcji użytkownika [którą przechwytuję sprawnie], widoczne były opcje numer 1 i 2, albo 3 i 4, albo whatever, chodzi o mechanizm.
Da się to zrobić łatwo?
Bo hide/show wygląda na to, że nie działa.
Próbowałem dodawać class atrybut, ale to niewiele daje.
A nie chodzi o to, żęby na stałe je usuwać, bo użytkownik może zmieniać swój wybór.SM-S908 - a po co? , Deus ex machine 23/01/09 22:59
generuj selecta dynamicznie"Uti non Abuti" - wolałbym żeby ten select był gotowy bo: , kubazzz 23/01/09 23:31
- przejrzyste to jest
- łatwa edycja dla laika
- MUSI być po stronie klienta, javascriptem
Dla mnie najwygodniej byłoby właśnie tak jak to opisałem.SM-S908
- Można tak , Conroy 23/01/09 23:59
Robisz dwa selecty, w zależności kto co tam wybrał to jeden chowasz drugi ukrywasz. Przetwarzając przesłany formularz bierzesz dane z odpowiedniego selecta.
Ew. jak bardzo trzeba to robisz tak
<option disabled value="mercedes">Mercedes</option>
ale to go nie zniknie, a jedynie nie da wybrać.
Ukryć bez usuwania nie można.http://flickr.com/photos/myhacien
da - no dobra, a jakby javascriptem dodawać/usuwać , kubazzz 24/01/09 04:05
to jak to zrobić?
w jQuery - dodać jako children w stosunku do <select>?SM-S908 - Tak się nie robi , Conroy 24/01/09 11:19
Nie robi się tak dlatego, że w ten sposób nie rozdzielasz odpowiednio warstw aplikacji. Bo jak zmienisz coś na stronie to pewnie musisz jeszcze poprawić w JS, chyba że sobie napiszesz skomplikowany kod który Ci odpowiednio zapamięta co było - nonsens. Także użycie prostego show i hide na całym selekcie jest prostsze od manipulowania ich zawartością. Dochodzi do tego jeszcze wydajność (która akurat w tym przykładzie ma małe znaczenie), ale ukrycie i pokazanie to tylko zmiana stylu display, a dodanie to stworzenie elementów i dopisanie ich w strukturę DOM, także pierwsze szybsze.
Tak ja to widzę.
Ale jak musisz dodawać i usuwać to użyj którejś z metod z http://docs.jquery.com/Manipulation z sekcji "Inserting Inside" oraz "Removing". Np. http://docs.jquery.com/Manipulation/append#content oraz
http://docs.jquery.com/Manipulation/remove#exprhttp://flickr.com/photos/myhacien
da
|
|
|
|
|
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL |
|
|
|
|