Qué lío hay con este post ¿no?
¿Os parece más sencilla la solución con una lista que con una tabla?
Código PHP:
<select id="sel" onchange="agregarALaLista( this.options[this.options.selectedIndex].text );">
<option>casa</option>
<option>coche</option>
<option>avión</option>
<option>tren</option>
<option>monorrail</option>
<option>trolebus</option>
</select> <input type="button" onclick="borrarUltimo()" value="borrar el último" />
<ol id="lista"></ul>
<script>
var laLista=document.getElementById("lista");
// agrega un elemento a la lista, al final. Con el texto txt
function agregarALaLista(txt) {
var elem=document.createElement("LI");
elem.appendChild( document.createTextNode( txt ) );
laLista.appendChild( elem );
}
// elimina el último elemento de la lista
function borrarUltimo() {
var elementosLI=laLista.getElementsByTagName("LI");
if( elementosLI.length > 0 )
laLista.removeChild( elementosLI[elementosLI.length-1] );
else
alert("No hay en la lista nada que borrar.");
}
</script>
A mi me parece más limpio, y más controlable mediante CSS. Además así no te tienes que preocupar por el número de elementos seleccionados, y si los quisieras los podrías hallar con:
laLista.getElementsByTagName("LI").length
sin ningún problema.
Las tablas son un lío porque están llenas de nodos de texto vacío si utilizamos tabulaciones y hay que tener en cuenta demasiadas cosas, <tbody>, <thead>, y demás historias a las que no estamos acostumbrados.
Un saludo.