jQuery - Abrufen des Textwerts einer Tabellenzelle in derselben Zeile wie ein angeklicktes Element

Ich auf einen link klicken in eine Zelle der Tabelle. Ich brauche, um den Wert einer bestimmten Zelle innerhalb dieser Tabelle Zeile.

<tr>
    <td class="one">this</td>
    <td class="two">that</td>
    <td class="three">here</td>
    <td class="four"><a href="#">there</a></td>
</tr>
<tr>
    <td class="one">qwqw</td>
    <td class="two">dfgh</td>
    <td class="three">ui</td>
<td class="four"><a href="#">there</a></td>
</tr>

Habe ich eine click-handler angebracht, um den link in die vierte Zelle. Das click-handler, der eine Funktion aufruft, öffnet sich ein modales Fenster. Wenn ein Formular in der modalen vorgelegt wird, möchte ich auch den Wert von td class="zwei" aus der Zeile in der der link geklickt wurde, um diesen modal.

Hier ist die Funktion, sendet der modal - (das problem ist immer der richtige Wert für var, Etwas):

var Send = function() {
    var Name = $( '#name' ).val();
    var Something = $(this).closest('td').siblings('.two').text(); //version 1. doesn't work
    var Something = $(this).closest('tr').siblings('td.two').text(); //version 2 also doesn't work
    var Something = $(this).attr('class'); //version 3. just a test but also doesn't work
    $.ajax( {
        async: false,
        data: { name: Name, somedata: Something },
        type: 'POST',
        url: the url
    });        
};

Das problem ist, dass ich nicht den richtigen Wert für Etwas. Es sollte der Wert von td class= " zwei in der gleichen Zeile wie das angeklickte element.

Den Weg, dies alles kommt zusammen. Klicken Sie auf den Ziel-link, das aufrufen einer Methode namens Send_Click(). Send_Click hat einige Validierungen und dann ruft Send (), aber der Wert für Etwas, das nie aufgefüllt. Ist dies, weil this ist nicht das, was ich mir denke, es ist? Hjelp!

InformationsquelleAutor der Frage Stuart | 2010-02-23

Schreibe einen Kommentar