JS / jQuery TH des zugehörigen TD zurückgeben, möglich?

8

Ich muss wissen, ob es möglich ist, das .html() eines bestimmten TH zu erhalten, wenn es keine ID oder Klasse mit jQuery-Selektoren verwendet.

Um meine Frage zu veranschaulichen:

%Vor%

Ich setze eine $('table tbody tr td') -Funktion, die eine Zelle durch Doppelklick in ein Eingabefeld verwandelt, und dann zurück in Text bei Unschärfe, wobei die Änderung widergespiegelt wird, die über das Eingabefeld an der Zelle vorgenommen wurde.

Ich muss wissen können, auf welche Spalte ich zugreife. Wenn also jemand auf TD2 doppelklickt, möchte ich, dass der Name des Eingabefeldes TH2 enthält.

Bitte lassen Sie mich wissen, wie ich dies tun kann, ohne ID / Klassen für jeden TH oder TD zu setzen.

    
Vitaliy Isikov 24.06.2011, 23:22
quelle

3 Antworten

20

Wenn sich der Handler in Ihrem <td> -Element befindet, dann in Ihrem Handler:

%Vor%

Tabellenzellen behalten ihre eigenen Indexnummern, auf die über die Eigenschaft cellIndex zugegriffen werden kann.

Tabellenzeilen machen dasselbe mit rowIndex .

Die jQuery-Methoden sind:

  • die closest() [Dokumente] Methode, um das <table>

  • zu erhalten
  • die find() [Dokumente] Methode, um die verschachtelten <th> -Elemente

  • zu finden
  • eq() [Dokumente] Methode, um die <th> -Elemente auf den gleichen Index wie die <td>

  • zu reduzieren

Ein wenig weiter könnte jQuery reduction so aussehen:

%Vor%     
user113716 24.06.2011, 23:27
quelle
0

Wie ist das

? %Vor%     
Gaby aka G. Petrioli 24.06.2011 23:30
quelle
0

Eine jQuery-Alternative zu Patrick's Lösung könnte sein:

%Vor%     
Dino Gambone 25.06.2011 00:37
quelle