Foros aprenderaprogramar.com
Aprender a programar => C, C++, C#, Java, Visual Basic, HTML, PHP, CSS, Javascript, Ajax, Joomla, MySql y más => Mensaje iniciado por: paramonso en 30 de Octubre 2017, 18:33
-
Hola. Dejo una solución al Ejercicio CU01142E Funciones JavaScript cadenas texto: toLowerCase charAt substring split replace replaceAll indexOf del tutorial pdf básico sobre JavaScript.
<!DOCTYPE html>
<html>
<head>
<title>Ejemplo curso aprenderaprogramar.com</title><meta charset="utf-8">
<style type="text/css">
body {background-color:yellow; font-family: sans-serif;}
label {color: maroon; display:block; padding:5px;}
.simulaLink {color: blue; cursor:pointer;}
</style>
<script type="text/javascript">
function validar() {
validaNombre();
validaApellido();
validarEmail();
}
function validarEmail(){
var varEmail = document.getElementById("email");
var Cambio=varEmail.value;
varEmail.value =Cambio.replace(/at/g,'@');
var inEmail=varEmail.value;
var msg="",arrob=0,punto=0,i;
if (inEmail.length<=0){
alert("No se admite el campo Email vacio");
varEmail.value="@.";
varEmail.focus();
varEmail.select();
}
else{
for (i=0; i<inEmail.length;i++){
if(inEmail.charAt(i)=="@" ) {arrob=1;}
if(inEmail.charAt(i)==".") {punto=1;}
}
if (arrob==0){msg=msg+"Falta el signo @\n"}
if (punto==0){msg=msg+"Falta el .\n"}
if (arrob==0 || punto==0){alert(msg)}
}
if (arrob && punto){msg=inEmail.toLowerCase();varEmail.value=msg; }
}
function validaNombre(){
var varNombre = document.getElementById("nombre");
var inNombre=varNombre.value
if (inNombre.length<3){
alert("El nombre debe de contener al menos 3 caracteres");
varNombre.value=" ";
varNombre.focus();
varNombre.select();
}
}
function validaApellido()
{
var varApell = document.getElementById("apellidos");
var inApell=varApell.value
if (inApell.length<=0){
alert("No se admite el campo Apellido Vacio");
varApell.value=" ";
varApell.focus();
varApell.select();
}
}
</script>
</head>
<body><div id="cabecera"><h1>Portal web aprenderaprogramar.com</h1><h2>Didáctica y divulgación de la programación</h2></div>
<!-- Formulario de contacto -->
<form name ="frmContacto" class="frmTipo1" method="get" onsubmit="validar()" action="">
<p>Indica los datos de la persona que se apunta al curso:</p>
<label for="nombre"><span>Nombre:</span> <input id="nombre" type="text" name="nombre" onBlur="validaNombre()" /></label><!-- -->
<label for="apellidos"><span>Apellidos:</span> <input id="apellidos" type="text" name="apellidos" onBlur="validaApellido()" /></label><!---->
<label for="email"><span>Correo electrónico:</span> <input id="email" type="text" name="email" value="" onBlur="validarEmail()"/></label><!-- -->
<label><input type="submit" value="Enviar"><input type="reset" value="Cancelar"></label>
</form></body></html>
Adios.
:-X
-
Buenas paramonso, repetir (una vez más) ... para poner título a los temas de los foros hacerlo como se indica en https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0
El ejercicio está bien resuelto. Un único detalle a comentar, si escribo prueba at probando.com la cadena que queda es prueba @ probando.com que deja espacios intermedios.
Esto se puede solucionar haciendo el simple cambio de varEmail.value =Cambio.replace(/at/g,'@');
Por lo mismo introduciendo los espacios:
varEmail.value =Cambio.replace(/ at /g,'@');
De ese modo la cadena que quedaría sería prueba@probando.com
Salu2