Hola dieguicho:
Me parece que para explorer existe el método remove, pero no sirve con netscape (y no sé si otros navegadores)...
Hice algunas pruebas con una página que tenía y salió una función que va bien en los dos:
Código PHP:
function borrar(yo, n) {
var nuevas = new Array();
var x = 0;
var elementos = yo.options;
for (var i = 0; i < elementos.length; i ++)
if (i != n) {
nuevas[x] = new Option();
nuevas[x].text = elementos[i].text;
nuevas[x].value = elementos[i].value;
x ++;
}
for (i = 0; i < nuevas.length; i ++) {
elementos[i].text = nuevas[i].text;
elementos[i].value = nuevas[i].value;
}
elementos.length--;
elementos.selectedIndex--;
}
Como podrás ver, se trata de volcar a un nuevo array, las opciones existentes, y luego realizar el volcado inverso (sin el elemento que se quiere borrar... para luego disminuir el "length" de las opciones.
Lo probé en este ejemplo:
<SELECT onchange="borrar(this, this.selectedIndex)">
<option value=alert("Uno")>Uno</option>
<option value=alert("Dos")>Dos</option>
<option value=alert("Tres")>Tres</option>
<option value=alert("Cuatro")>Cuatro</option>
<option value=alert("Cinco")>Cinco</option>
<option value=alert("Seis")>Seis</option>
</select>
Espero que te sirva.
Saludos