Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> jQuery DataTables - jak dostac index tr ?
Sadamowski
post
Post #1





Grupa: Zarejestrowani
Postów: 20
Pomógł: 1
Dołączył: 4.07.2011

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


Wiatm,

Pytanie jest proste:
jak dostac index <tr> wygenerowany przez datatables.
Oczywiście odpowiedz jest prosta (każdy z Was powie):

  1. var aPos = oTable.fnGetPosition.parent(this);


to oczywiscie dziala wysmienicie jesli mamy zadeklarowane cos takiego: (oczywiscie zakladamy ze oTables jest juz zadeklarowane wczesniej jako $.dataTables();

  1. $('#PendingEmpl_table').on('click', 'tbody tr', function(){
  2.  
  3. var aPos = oTable.fnGetPosition(this);
  4. alert(aPos);
  5. }

itd

ale jesli chce dostac to samo ale klikajac na konkretny element w rzędzie tabeli np: <td> <a class='rem_tr'> Remove </a> </td> itd

to mam coś takiego

  1. $('#PendingEmpl_table').on('click', 'tbody tr .rem_tr', function(){
  2.  
  3. var aPos = oTable.fnGetPosition((IMG:style_emoticons/default/questionmark.gif) ?);
  4. alert(aPos);
  5. }



co wstawic w te znaki zapytania - this oczywiscie odpada. Kombinowalem z parentami i za cholere nic , POMOCY!!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
kamil4u
post
Post #2





Grupa: Zarejestrowani
Postów: 2 350
Pomógł: 512
Dołączył: 4.01.2009
Skąd: Wrocław / Świdnica

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


Nadal nie wiem o co chodzi, ale znalazłem rozwiązanie (IMG:style_emoticons/default/smile.gif)

Byłem blisko:
Cytat
var aPos = oTable.fnGetPosition( $(this).parent() );

To nie działa, gdyż funkcja oczekuje referencji do elementu DOM( elementu HTML ), a $(this).parent() zwraca obiekt jQuery, a nie HTML. Czyli trzeb jeszcze użyć funkcji get( http://api.jquery.com/get/ )

Czyli kod będzie wyglądał mniej więcej tak:
Kod
var aPos = oTable.fnGetPosition( $(this).parent().parent().get(0) );


Jest użyte 2 razy parent, gdyż masz strukturę tr->td->a ,a Ty wychodzisz od <a>. Nie chce mi się sprawdzać( patrz dokumentacja jQuery ), ale chyba można zastąpić
parent().parent() na ładniejsze parent(2)


Jakby coś nadal nie działało, to zanim napiszesz to trochę potestuj to rozwiązania, a jak to nie pomoże to umieść przykładowy kod tu: http://jsfiddle.net/ - możesz tam dołączyć biblioteki jQuery
Go to the top of the page
+Quote Post

Posty w temacie


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: 11.10.2025 - 10:46