hola a todos:
he cogido y adaptado un javascript de conversión a mayúsculas de los caracterres de una caja de texto... este es el codigo...
Código PHP:
<html>
<head>
<script languaje="javascript">
function todoMay(caja) {
var key = window.event.keyCode;
if (key == 225 || key == 233 || key == 237 || key == 241 || key == 243 || key == 250 || (key >= 65 && key <= 90)) {
eval(caja + ".value = " + caja + ".value.toUpperCase()");
}
}
</script>
</head>
<body>
<form name="frm">
<input type="text" name="caja" onKeyUp="javascript:todoMay('frm.caja')">
</form>
</body>
</html>
Hasta aqui todo bien, la funcion cumple y cuando el usuario digita en la caja una letra se le cambia a mayúsculas.... el problema viene si por ejemplo digitó dentro de la caja lo siguiente: EL ES INGENIERO y desea poner en vez de EL: ELLA, bueno pues, cuando pone el cursor en la L y quiere escribir otra L y luego la A, al escribir la L, el cursor se va al final y luego de escribir la A la frase termina asi: ELL ES INGENIEROA..... yo quisiera saber como puedo corregir este problema, he estado buscando alguna funcion como setCaretPosition() pero no encuentro nada y ni forma de coservar el caret del cursor en la posicion donde se esta escribiendo y que no salte al final... quiza haya alguna ogra funcion envez de eval(...value = ... value.toUpperCase()) que me permita obtener el mismo resultado (todo a mayúsculas) y que no mueva el cursor de la caja de texto
Muchas gracias de antemano y espero que esto tenga solución
Éxitos a todos
Paco