Cadenas de caracteres

Que tal experto tengo un formulario en htm y antes de que envíe los datos al servidor quiero validarlos ejemplo en el campo donde coloco el nombre quiero que haga lo siguiente: ingreso un nombre en el text ej roberto quiero que al perder el foco diga Roberto es decir que cambie la primer letra a mayúscula el resto en minúscula o que escriba las vocales en mayúscula el resto en minúscula ej ramiro rAmIrO, se que se puede hacer en otro lenguajes... Lamentablemente lo único que me sale es cambiar toda la palabra completa no algunas.
Gracias...

1 respuesta

Respuesta
1
Lo que necesitas es separar el texto en 2 cadenas diferentes, cada una a una variable, luego realizas el cambio de mayúsculas como quieras, luego concatenas los resultados y reasignas ese valor al campo, por ejemplo:
var nombre = "roberto";
var nombre1aux = nombre.substr(0,1).toUpperCase();
var nombre2aux = nombre.substr(1, nombre.length()-1).toLowerCase();
var nuevoNombre = nombre1aux + nombre2aux;
document.forms[0].campoNombre.value = nuevoNombre;
//document.forms[0].submit();
Ten cuidado con la sintaxis de los métodos toUpperCase() y toLowerCase(), no recuerdo exáxtamente si se escriben así, el resto sería parecido al ejemplo que te doy.
Suerte
Hola Experto mil disculpas por la tardanza... probé algo parecido a lo Tu me has dicho no se si esta bien aclaro, no me devuelve nada solo me aparece el input box (prompt) ingrese nombre y no me da nada en pantalla.
No se como engancharlo...
Desde ya gracias por su tiempo
<script>
var nombre, nombre1aux, nombre2aux, nuevoNombre
nombre = prompt("Ingrese su nombre")
nombre1aux = nombre.substr(0,1).toUpperCase();
nombre2aux = nombre.substr(1, nombre.length()-1).toLowerCase();
nuevoNombre = nombre1aux + nombre2aux;
document.write (nuevoNombre)
</script>
Pásame todo el código de la página para probar lo que falla. A ver si veo algo raro.
Disculpa que código te paso el que me enviaste tu o el mio, si es el míos es el que esta arriba el que dice prompt ("ingresee") Aquí te lo envío devuelta por las dudas...
<script>
var nombre, nombre1aux, nombre2aux, nuevoNombre
nombre = prompt("Ingrese su nombre")
nombre1aux = nombre.substr(0,1).toUpperCase();
nombre2aux = nombre.substr(1, nombre.length()-1).toLowerCase();
nuevoNombre = nombre1aux + nombre2aux;
document.write (nuevoNombre)
</script>
Arreglado! Suerte con esto...
<html>
<head>
<script>
var nombre, nombre1aux, nombre2aux, nuevoNombre = '';
nombre = prompt("Ingrese su nombre","");
nombre1aux = nombre.substr(0,1).toUpperCase();
nombre2aux = nombre.substr(1, nombre.length-1).toLowerCase();
nuevoNombre = nombre1aux + nombre2aux;
document.write (nuevoNombre)
</script>
</head>
<body>
</body>
</html>

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas