![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam taki problem. Z bazy danych pobierane są dane i wyświetlane na stronie, w tym przypadku np.Jan Kowalski a pod imieniem i nazwiskiem po kliknięciu w imię i nazwisko pojawiają się bądź znikają pod imieniem i nazwiskiem (toggle w jquery) pozostałe dane np email, telefon, data urodzenia przypisane do konkretnej osoby. Kod echo'<h3><a href ="#" class=\'person\'>'.$name.' '.$surname.'</a></h3><br />'; echo"<div class='date' style = 'display:none;'>$email<br />$phone<br />$birthday</div>"; a kod jquery wygląda tak Kod $('.person').click(function(){ $('.date').toggle(); }); Problem polega na tym że w tym przypadku po kliknięciu w imie/nazwisko konkretnej osoby znikają/pojawiają sie dane wszystkich innych osób. Jak przerobić kod jquery tak by po kliknięciu konkretnej osoby pojawiały się/ znikały tylko dane tej osoby. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 350 Pomógł: 512 Dołączył: 4.01.2009 Skąd: Wrocław / Świdnica Ostrzeżenie: (0%) ![]() ![]() |
Zamiast $('.date') pobierz następny element od klikniętego( this ), który ma klasę .date. Więcej w dokumentacji jQuery
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
ale jaką funkcją next() first()
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Poprostu spójrz na swoją strukturę... skoro A jest w H3 a DATE jest za H3 to chyba logiczne ze najpierw masz pójść raz w górę a potem raz w bok.
Do góry używa się parent() a do boku next(). Tu naprawdę nie ma żadnej filozofii a potrzeba odrobina wysiłku w popatrzeniu we własny kod. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 380 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Zresztą dopiero co były 2 identyczne wątki, zdaje się że nawet w ciągu ostatniego tygodnia. Wystarczy trochę się przyłożyć i poszukać.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
$('.person').click(function(){
$(this).parent().next().toggle(); }); teraz niby działa jak powinno z tym że nie widać informacji pod imieniem/nazwiskiem. Technicznie działa jak powinno jak nie widać informacji po prostu jest białe tło |
|
|
![]()
Post
#7
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Widać zmienne:
$email<br />$phone<br />$birthday są puste.... dość logiczne |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
nie są puste po pierwsze, a po drugie elementy są jedne pod drugim (email, tel i data urodzenia są ustawione jako display:none) np
jan kowalski tel data urodzenia jan nowak tel data urodzenia czyli klikając na jan kowalski dane tej osoby się chowają a imie i nazwisko kolejnej osoby automatycznie się podnosi do góry i to wizualnie widać ale w miejscu gdzie te dane (email, tel i data urodzenia) miałyby być widoczne jest białe tło (nic nie ma) |
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Cytat i to wizualnie widać ale w miejscu gdzie te dane (email, tel i data urodzenia) miałyby być widoczne jest białe tło (nic nie ma) No to ci grzecznie tłumacze, że te dane są puste....Zobacz źródło strony (w przeglądarce) i zobacz czy są czy nie ma... |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
Sprwadzałem nie są puste (zródło strony) a poza tym po modyfikacji czyli usunięciu <h3></h3> i parent() w jquery kod w ogóle nie działa
Kod echo'<a href ="#" class=\'person\'>'.$name.' '.$surname.'</a><br />'; echo"<div class='date' style = 'display:none;'>$email<br />$phone<br />$birthday</div>"; Kod $('.person').click(function(){
$(this).next().toggle(); }); |
|
|
![]()
Post
#11
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
No to w takim razie wyświetlasz je w takim samym kolorze co kolor tła więc ich nie widać (IMG:style_emoticons/default/smile.gif)
Masz to gdzieś wystawione online? Bo tak to się można do jutra bawić w ciuciubabkę. |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
zaręczam że nie wyświetlam tego wykorzystując białą czcionkę kod, który podałem przy zakładaniu tematu działa ale na wszystkie osoby po dodaniu do kodu jqery fukcji parent() i next() jestem w stanie uchwycić dane do konkretnej osoby z tym że nie widać ich (tych danych) na ekranie po dodaniu tych funkcji
$('.person').click(function(){ $(this).parent().next().toggle(); }); |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 4 298 Pomógł: 447 Dołączył: 16.11.2006 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#14
|
|
Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Wywal te <br /> po H3
Ponawiam pytanie: jesteś w stanie to gdzieś wystawić online? |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 77 Pomógł: 0 Dołączył: 30.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
DZIĘKI TERAZ DZiAŁA
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:14 |