Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [JavaScript]Tabelka
chmiello96
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 18.03.2012

Ostrzeżenie: (0%)
-----


Z JS jestem całkowicie zielony, ale jest mi niezbędny do pewnego elementu strony.
Najłatwiej będzie mi to zaprezentować skrinami
(IMG:http://fotopasja.net/first.jpg)
Mamy tabelkę z komórkami. Każda z nich ma swoje id(po prawej stronie)

(IMG:http://fotopasja.net/sec.jpg)
Gdy klikniemy na komórkę zmienia kolor, oraz powoduje otwarcie się pod tabelą formularza z ukrytą zmienną, równą 'id'.

Nie mam pojęcia o javie i proszę o pomoc.
Jeśli jestem niezrozumiały, proszę pisać.
Będę wdzięczny za miłą pomoc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
tolomei
post
Post #2





Grupa: Zarejestrowani
Postów: 450
Pomógł: 135
Dołączył: 18.11.2010
Skąd: Wschowa

Ostrzeżenie: (0%)
-----


Witaj.

Jeśli możesz to skopiuj kod HTML całej tabeli i wrzuć na JSFIDDLE.
Następnie zapisz i podaj linka tu na forum.

Pozdro.
Go to the top of the page
+Quote Post
chmiello96
post
Post #3





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 18.03.2012

Ostrzeżenie: (0%)
-----


http://jsfiddle.net/6G2jf/
Go to the top of the page
+Quote Post
tolomei
post
Post #4





Grupa: Zarejestrowani
Postów: 450
Pomógł: 135
Dołączył: 18.11.2010
Skąd: Wschowa

Ostrzeżenie: (0%)
-----


Co konkretnie ma się wydarzyć po kliknięciu na daną komórkę?
Ma się wyświetlić formularz?
Jak ma on wyglądać?
Czy ma być wysyłany standardowo, z przeładowaniem strony czy bez przeładowania?
Jaki ma mieć adres?
Go to the top of the page
+Quote Post
chmiello96
post
Post #5





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 18.03.2012

Ostrzeżenie: (0%)
-----


więc po kliknięciu na komórkę zmienia kolor
z formularzem dam sobie radę.
Chodzi o to, by móc wprowadzić w formularz ukrytą zmienną id wybranej komórki.
Go to the top of the page
+Quote Post
tolomei
post
Post #6





Grupa: Zarejestrowani
Postów: 450
Pomógł: 135
Dołączył: 18.11.2010
Skąd: Wschowa

Ostrzeżenie: (0%)
-----


JavaScript najsprawniej operuje na atrybutach znaczników.
W związku z tym proponuję Ci dodać atrybut id do każdego znacznika td, który reprezentuje konkretny dzień.
Tak jak prezentuje się to tutaj:
http://jsfiddle.net/6G2jf/1/

Teraz musimy napisać reakcję na kliknięcie na daną komórkę.
W celu uproszczenia kodu użyję biblioteki jQuery.
Pełna wersja tutaj:
http://jsfiddle.net/6G2jf/3/

Omówienie kodu:

  1. $(function(){
  2.  
  3. // wybieramy wszystkie elementy td, których id zaczyna się od "d_"
  4. // oraz przypisujemy do wszystkich obsługę zdarzenia 'click'
  5. $('table td[id^="d_"]').bind('click', function(){
  6.  
  7. // blok służy do resetowania koloru wszystkich komórek
  8. $('table td[id^="d_"]').each(function(){
  9. $(this).css('background-color', '');
  10. });
  11.  
  12. // klikniętej komórce nadajemy kolor
  13. $(this).css('background-color', 'lightgreen');
  14.  
  15. // w tym bloku wyławiamy id komórki oraz wyświetlamy w
  16. // elemencie <div id="form">
  17. var elementId = $(this).attr('id');
  18. var dzienId = elementId.split('_');
  19. $('div#form').html('Formularz o id = '+dzienId[1]+'!!!');
  20. });
  21. });


Pozdrawiam.
Go to the top of the page
+Quote Post
chmiello96
post
Post #7





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 18.03.2012

Ostrzeżenie: (0%)
-----


nieopisana radość z mojej strony i no po prostu bardzo Ci dziękuję (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 12:02