Korzystam z jQuery DataTables .
Chcę usunąć pasek wyszukiwania i stopkę (pokazującą liczbę widocznych wierszy), które są domyślnie dodawane do tabeli. Chcę tylko użyć tej wtyczki do sortowania. Czy można to zrobić?
jquery
html
datatables
leora
źródło
źródło
sDom
jak opisano tutaj - stackoverflow.com/a/53885264/5729813Odpowiedzi:
Dla DataTables> = 1.10 użyj:
Dla DataTables <1.10 użyj:
lub używając czystego CSS:
źródło
paging:false
iinfo:false
nie tylkopaging:false
Sprawdź http://www.datatables.net/examples/basic_init/filter_only.html, aby uzyskać listę funkcji do pokazania / ukrywania.
Chcemy ustawić „bFilter” i „bInfo” na false;
źródło
{paging: false, info: false}
Nie można w ogóle narysować nagłówka ani stopki, ustawiając
sDom
: http://datatables.net/usage/options#sDomwyświetli TYLKO tabelę, żadnych nagłówków, stopek ani niczego.
Omówiono tu niektóre: http://www.datatables.net/forums/discussion/2722/how-to-hide-empty-header-and-footer/p1
źródło
dom
ltipr
Jeśli używasz niestandardowego filtra, możesz chcieć ukryć pole wyszukiwania, ale nadal chcesz włączyć funkcję filtrowania, więc
bFilter: false
nie jest to możliwe.dom: 'lrtp'
Zamiast tego użyj domyślnie'lfrtip'
. Dokumentacja: https://datatables.net/reference/option/domźródło
źródło
Szybkim i brudnym sposobem jest znalezienie klasy stopki i ukrycie jej za pomocą jQuery lub CSS:
źródło
jeśli używasz themeroller:
źródło
Jak powiedział @Scott Stafford,
sDOM
jest to najbardziej odpowiednia właściwość do pokazywania, ukrywania lub przenoszenia elementów składających się na DataTables. Myślę, żesDOM
teraz jest przestarzały, z faktyczną łatką ta właściwość jest terazdom
.Ta właściwość pozwala również ustawić pewną klasę lub identyfikator na element, dzięki czemu możesz stylowo łatwiej.
Sprawdź oficjalną dokumentację tutaj: https://datatables.net/reference/option/dom
W tym przykładzie pokazano tylko tabelę:
źródło
w konstruktorze danych
https://datatables.net/forums/discussion/20006/how-to-remove-cross-icon-in-search-box
źródło
Tutaj możesz dodać
sDom
element do kodu, górny pasek wyszukiwania jest ukryty.źródło
Można to zrobić po prostu zmieniając konfigurację:
Ale żeby ukryć pustą stopkę; ten fragment kodu rozwiązuje problem:
źródło
Przypomnienie, że nie możesz zainicjować
DataTable
tego samego<table>
elementu dwa razy.Jeśli napotkasz ten sam problem, możesz ustawić
searching
i ustawićpaging
fałsz podczas inicjowania DataTable na swoim HTML w<table>
ten sposóbźródło
Możesz je ukryć za pomocą css:
źródło
Możesz użyć atrybutu sDom. Kod wygląda mniej więcej tak.
Ukrywa okno wyszukiwania i pager.
źródło
- dokumentacja dataTables: dane HTML5- * atrybuty - opcje tabeli
Możesz więc określić
data-searching="false" data-paging="false" data-info="false"
wtable
. Na przykład ta tabela nie pozwala na wyszukiwanie, stosowanie stronicowania ani pokazywanie bloku informacyjnego:Zobacz działający przykład na https://jsfiddle.net/jhfrench/17v94f2s/ .
Zaletą tego podejścia jest to, że pozwala ono na standardowe wywołanie dataTables (tj.
$('table.apply_dataTables').DataTable()
), A jednocześnie jest w stanie skonfigurować opcje dataTables tabela po tabeli.źródło
Zrobiłem to, przypisując stopce identyfikator, a następnie stylizując za pomocą css:
następnie stylizuj za pomocą css:
Jak wspomniano powyżej, sposoby nie działają dla mnie.
źródło
Myślę, że najprostszym sposobem jest:
Możesz edytować tylko tabelę, którą musisz zmodyfikować, bez zmiany wspólnego CSS lub JS.
źródło
Jeśli chcesz tylko ukryć formularz wyszukiwania, na przykład dlatego, że masz filtry do wprowadzania danych w kolumnie lub może to być spowodowane tym, że masz już formularz wyszukiwania CMS, który jest w stanie zwrócić wyniki z tabeli, wszystko co musisz zrobić, to sprawdzić formularz i uzyskać jego identyfikator - (w chwili pisania tego wygląda to tak
[tableid]-table_filter.dataTables_filter
). Następnie po prostu[tableid]-table_filter.dataTables_filter{display:none;}
zachowaj wszystkie inne cechy danych.źródło