Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

195
Views
¿Cómo usar Javascript para verificar que la entrada del usuario incluye una letra mayúscula, una letra minúscula, un número y tiene entre 8 y 12 caracteres?

Estoy aprendiendo Javascript y tengo problemas con una tarea. Se supone que debo crear un código Javascript que verifique si la entrada del usuario es válida. Las instrucciones dicen

Solicite al usuario que ingrese su nombre, apellido, ID de usuario y fecha de nacimiento en formato de fecha tipo. El ID de usuario debe contener mayúsculas, minúsculas, un número y tener entre 8 y 12 caracteres. Cree una función JS para verificar los formatos del campo UserID. Deberá usar Loop For para iterar a través de sus campos de datos carácter por carácter, y funciones JS como char.toUpperCase() y parsInt(char) o RegExp() para validar el Formato de ID de usuario.

No tengo idea de cómo hacer eso. He intentado algo como esto

 <form id = "myForm" action=""> <label for="uid">User Id:</label> <input type="name" id="uid" name="uid"><br> <label for ="fname"> First Name:</label> <input type = "text" id="fname" name="fname"><br> <label for="lname">Last name:</label> <input type="text" id="lname" name="lname"><br> <label for ="birthday"> Birthday:</label> <input type="date" id="birthday" name = "birthday"><br> <input type="submit" id = "accept" value="Accept"> </form> <div id = "validate"> </div> <script> form.onsubmit = function() { let uIdText = document.getElementById('uId'); let pattern = \d; let result = pattern.test(uidText); if result = true {document.getElementById("validate").innerHTML = "Valid User ID"} else document.getElementById("validate").innerHTML = "UserID needs to include a number"; </script>

Pero eso no funciona, y no usa un bucle.

* ACTUALIZACIÓN: Probé esto

 var uIdText = document.getElementById(uId).innerHTML; var myForm = document.getElementById(myForm).innerHTML; var result = document.getElementById(validate).innerHTML; myForm.onsubmit = function validate(uIdText) { uIdLength(); /regexp(?=.[az])(?=.\d)(?=.[AZ]); } function uIdLength(uIdText){ if uIdText.legth >=8 && <=12 == true; then result = "Form Submitted"; else result = "Invalid User Id" } validate(uIdText);

pero eso tampoco funcionó.

about 4 years ago · Santiago Gelvez
2 answers
Answer question

0

La solución está escrita en los comentarios, puede agregar un atributo de pattern dentro de su input :

 <input type="text" id="fname" name="fname" pattern="(?=.*[az])(?=.*[AZ])(?=.*[0-9]).{8,12}">
about 4 years ago · Santiago Gelvez Report

0

Aquí hay un pequeño ejemplo. Hay una función validateUserId que devuelve verdadero o falso, ya sea que el ID de usuario sea válido o no.

Después de la validación, se establece un texto para mostrar un mensaje al usuario.

 const validateUserId = (userId) => /^(?=.*[az])(?=.*[AZ])(?=.*[0-9]).{8,12}$/.test(userId); const form = document.getElementById("myForm"); form.onsubmit = (e) => { // stop page from reload e.preventDefault(); // validate userid and set message if(validateUserId(e.target.elements.uid.value)) { document.getElementById("validate").innerHTML = "Valid User ID"; } else { document.getElementById("validate").innerHTML = "User ID needs to include a number"; } }
 form label { width: 80px; display: inline-block; }
 <form id="myForm" action=""> <label for="uid">User Id:</label> <input type="name" id="uid" name="uid"><br> <label for="fname"> First Name:</label> <input type="text" id="fname" name="fname"><br> <label for="lname">Last name:</label> <input type="text" id="lname" name="lname"><br> <label for ="birthday"> Birthday:</label> <input type="date" id="birthday" name = "birthday"><br> <input type="submit" id = "accept" value="Accept"> <div id="validate"></div> </form>

about 4 years ago · Santiago Gelvez Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!