jQuery Tabellensortierung: Sortierung wird gestoppt

8

Ist es möglich, die Sortierung der Tabelle zu stoppen, wenn der Benutzer auf div im Tabellenkopf th ?

klickt?

In meinem Fall hat div die Funktion onClick="resize(e)" , auf der ich Folgendes mache:

%Vor%

Aber es funktioniert nicht.

Bearbeiten: Tabelle wird vor e.stopPropagation() oder return false

sortiert     
andriy 20.06.2012, 10:30
quelle

3 Antworten

7

Ich habe zwei Demos für dich gemacht. Der erste enthält den Inhalt der Tabellenüberschrift in einem Bereich und der zweite enthält die undokumentierte Funktion onRenderHeader , um die span innerhalb der Kopfzeile hinzuzufügen. In beiden Fällen ist nur der Inhalt von span anklickbar (der Text), während beim Klicken außerhalb des Inhalts die Spalte sortiert wird. Wenn Sie div verwenden, ist nur der Header-Padding verfügbar, um eine Spaltensortierung zu initialisieren.

Demo 1 - Inhalt des Headers in das Markup eingepackt

%Vor%

Demo 2 - Header-Inhalt mit der Option onRenderHeader eingepackt

%Vor%

Wenn Sie weitere Informationen zur Verwendung der Option onRenderHeader benötigen, sehen Sie sich meine Blogpost zu den fehlenden Dokumenten.

    
Mottie 01.07.2012, 14:21
quelle
4

Beenden Sie die Propagierung, um zu verhindern, dass das Ereignis sprudelt, aber wenn Sie die Standardaktion abbrechen möchten, sollten Sie event.preventDefault ()

verwenden     
Ajay Beniwal 20.06.2012 10:39
quelle
4

Ich bin gerade auf dieses genaue Problem gestoßen. Ich habe alles vorgeschlagen, einschließlich der direkten Zuweisung eines nicht-delegierten Event-Handlers zu dem genauen Element, das ich wollte, dann stoppe alle Propagierung + das Ereignis selbst. Immer noch kein Glück.

Aber ... es stellt sich heraus, dass jQuery tablesorter dem mouseup -Ereignis ein Ereignis zuweist, nicht dem click -Ereignis (wie Sie es erwarten würden!). Um zu verhindern, dass Tablesort es tut, müssen Sie stattdessen nur dieses Ereignis abbrechen. Hoffe, das hilft.

  • Ben
benjamin.keen 09.03.2013 23:48
quelle

Tags und Links