Hola:
Como veo que sigues sin intención de hacer fácil la respuesta, te diré un par de cosillas e iré al grano.
En el primer post, ví código php que no viene al caso. Tienes suerte de que conozco lo suficiente el lenguaje como para entender lo que hay en el mismo.
La primera respuesta contestaba perfectamente la pregunta de obtener la fila del radio que se selecciona
Sobre el número de mensajes, casi todos son intentando dar respuesta a usuarios que preguntan algo que pienso que puedo contestar, y unos cuantos también son "reproches", como hice contigo, y haré siempre que considere que me hacen perder el tiempo, o que no ponen interés en mis respuestas/ayudas... no me importa no ser popular con esos usuarios.
Al grano:
Voy a hacer que cada elemento span, se convierta en un campo de texto, y al último añadirle un botón que cambie otra vez los campos de texto en elementos span...
Código:
<html>
<head>
<script>
function seleccionaTR(elemento) {
ele = elemento;
while (ele.tagName != "TR") {ele = ele.parentNode;}
if (ele.style.backgroundColor != "red") {
ele.style.backgroundColor = "red";
for (i = 0, celdas = ele.getElementsByTagName("TD"), total = celdas.length; i < total; i ++)
if (celdas[i].getElementsByTagName("SPAN").length > 0) {
yo = celdas[i].getElementsByTagName("SPAN")[0];
contenido = yo.innerHTML;
nuevo = document.createElement("input");
nuevo.setAttribute("type", "text");
nuevo.value = contenido;
yo.parentNode.replaceChild(nuevo, yo);
if (i == celdas.length - 1) {
cambiar = document.createElement("button");
cambiar.innerHTML = "cambiar";
nuevo.parentNode.appendChild(cambiar);
cambiar.onclick = cambiarTR;
}
}
} else alert("fila seleccionada")
}
function cambiarTR(e) {
if (window.event) elemento = event.srcElement;
else elemento = e.target;
ele = elemento;
while (ele.tagName != "TR") {ele = ele.parentNode;}
elemento.parentNode.removeChild(elemento);
ele.style.backgroundColor = "blue";
for (i = 0, celdas = ele.getElementsByTagName("TD"), total = celdas.length; i < total; i ++)
if (celdas[i].getElementsByTagName("INPUT")[0].getAttribute("type") == "text") {
yo = celdas[i].getElementsByTagName("INPUT")[0];
contenido = yo.value;
nuevo = document.createElement("span");
nuevo.appendChild(document.createTextNode(contenido));
yo.parentNode.replaceChild(nuevo, yo);
}
}
</script>
</head>
<body>
<table border="1" >
<tr>
<td><input type="radio" onclick="seleccionaTR(this)" name="x" /></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
</tr>
<tr>
<td><input type="radio" onclick="seleccionaTR(this)" name="z" /></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
<td><span>Hola</span></td>
</tr>
</table>
</body>
</html>
De todos modos, si te sirve el código (no olvides probarlo), te quedará más trabajo para actualizar luego la base de datos...
Saludos
Por cierto, desde el navegador puedes usar la opción "ver código fuente" y fácilmente obtendrás lo que nos interesa en este foro.