Hola JavierB y compañía.
He probado el código en Mozilla y funciona me imagino que en Firefox debe funcionar, el código para I.E te lo dejo a ti, no dispongo de tiempo y ahora mismo no se por donde empezar, es un tema que tengo un poco olvidado, seguro que el código para I.E ya lo tendrás hecho.
Código:
<html>
<head>
<script type="text/javascript">
function pulsar(e) {
tecla = (document.all) ? e.keyCode : e.which;
if(tecla == 9 || tecla == 0) return false;
if(tecla == 8) return true;
if(window.Event){
var pst = e.currentTarget.selectionStart;
var string_start = e.currentTarget.value.substring(0,pst);
var string_end = e.currentTarget.value.substring(pst ,e.currentTarget.value.length);
e.currentTarget.value = string_start+ String.fromCharCode(tecla).toUpperCase()+ string_end;
e.currentTarget.selectionStart = pst + 1;
e.currentTarget.selectionEnd = pst + 1;
e.stopPropagation();
return false;
}
else if (!window.Event)e.keyCode=66; //esto solo funciona en IE
}
</script>
</head>
<body>
<input type="text" onkeypress="return pulsar(event)" />
</body>
</html>
También funciona el código en Opera 8 .
Saludos