2010-03-16 8 views
49

Quiero cambiar el color de fondo de la celda de la tabla cuando se hace clic en el botón de opción dentro de la celda.Cómo encontrar el elemento principal utilizando javascript

<table> 
    <tr> 
    <td align="center"> 
     <input type="radio" value="foo" 
     onclick="this.parentElement.style.background-color='red';" /> 
    </td> 
    </tr> 
</table> 

¿Cómo obtener la referencia del elemento primario?

+3

'parentElement' es un raro y totalmente inútil IE- solo propiedad La ortografía que está buscando es 'parentNode'. – bobince

+1

Sería más beneficioso publicar el resultado HTML real, no las etiquetas con sabor a Java. 'h: selectOneRadio' podría convertirse fácilmente a algunas etiquetas HTML anidadas y la selección del elemento primario inmediato no funcionaría. – DisgruntledGoat

Respuesta

125

uso de JavaScript sencillo:

element.parentNode 

En jQuery:

element.parent() 
+0

Lo intenté así pero no funciona Achaius

+0

'this' en su caso debe ser un elemento jQuery. intente '$ (this)'. –

+24

+1 por no solo dar una respuesta jQuery –

2

Usar el evento de cambio del selecto:

$('#my_select').change(function() 
{ 
    $(this).parents('td').css('background', '#000000'); 
}); 
+1

¿Lo etiquetó como jQuery? – ryanulit

Cuestiones relacionadas