Hago clic en un enlace en una celda de tabla. Necesito obtener el valor de una celda específica dentro de esta misma fila de la tabla.jQuery - Obtener el valor de texto de una celda de tabla en la misma fila que un elemento cliquete
<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>
Tengo un controlador de clic conectado al enlace en la cuarta celda. Ese controlador de clic llama a una función que abre una ventana modal. Cuando se envía un formulario en el modal, también quiero pasar el valor de td class = "two" de la fila en la que se hizo clic en el enlace a este modal.
Aquí es la función que envía el modal (el área del problema es obtener el valor correcto para Algo var):
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
});
};
El problema es que no puedo obtener el valor correcto para algo. Debería ser el valor de td class = two en la misma fila que el elemento cliqueado.
La forma en que todo esto se une. Haga clic en el enlace de destino, que llama a un método llamado Send_Click(). Send_Click realiza algunas validaciones y luego llama a Send() pero el valor de Something nunca se rellena. ¿Esto es porque this
no es lo que estoy pensando que es? Hjelp!
Heres buen artículo http://codepedia.info/jquery-get-table-cell-td-value-div –