2010-09-01 35 views
12

Soy muy nuevo en jQuery y JavaScript. Tengo una pequeña pregunta. Digamos que tengo una tabla HTML como la siguiente¿Cómo puedo seleccionar una columna específica en una fila usando jQuery y JavaScript?

<Table id="mytable"> 
<tr id="element"> 
    <td>value</td> 
    <td>text</td> 
</tr> 
</Table> 

En el ejemplo anterior i conocer el ID de fila y quiero cambiar el valor de la segunda columna de la fila con ese id particular.

Necesito un resultado algo como lo siguiente:

<Table id="mytable"> 
<tr id="element"> 
    <td>value</td> 
    <td>ChangedText</td> 
</tr> 
</Table> 

Así que mi pregunta es: ¿cómo puedo seleccionar 2 nd la columna de la primera fila con un identificador dado con el fin de cambiar el valor?

+0

hacen que desea seleccionar todas las segundas columnas de cada fila, o sólo la segunda columna de la primera (el enésimo) seguidos? –

+1

@Yanick - OP fue bastante claro: * "conozco el ID de la fila y quiero cambiar el valor de la segunda columna de la fila con ese ID en particular" * – user113716

+0

@patric dw, pero una respuesta sugería un selector para encontrar todo el segundo TD de cada fila, así que solo quería estar seguro. Como puede ver, mi respuesta supone lo que el OP está sugiriendo ... –

Respuesta

23
$("#element td:nth-child(2)").text('ChangedText'); 

Aquí está an example.

+1

@ Shog9 - Vaya ... arreglado. :) –

+0

Mucho mejor :-) – Shog9

12

algo como

$('#mytable tr:eq(0) td:eq(1)').text('ChangedText'); 

seleccionará la primera fila, segunda columna (0 a base) del elemento dado (tabla). En su caso, ya que se conoce el identificador de fila:

$('#mytable #element td:eq(1)').text('ChangedText'); 

o simplemente

$('#element td:eq(1)').text('ChangedText'); 
+0

Me gusta este, porque cuando pienso en iteraciones siempre veo 0 indexado. Cuando 2 en realidad significa el segundo elemento, empiezo a mirar por encima del hombro pensando que algo malo va a suceder hoy. – eaglei22

+0

Es por eso que CSS está diseñado para diseñadores (1, 2, 3, 4 ...) y JavaScript para programadores (0, 1, 2, 3 ...) :) –

+0

:) Sí, como programador principalmente, estoy extremadamente agradecido por el arranque! – eaglei22

2

código de Gert es cómo habría implementado lo que están pidiendo, así que no publicar de nuevo. Sin embargo, dado que eres nuevo en jquery/javascript, es posible que te guste esta herramienta que uso para asegurarte de que mis selectores funcionan http://www.woods.iki.fi/interactive-jquery-tester.html.

Saludos, Joe

+0

+1 - ¡Buen probador! –

Cuestiones relacionadas