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

103
Views
Prueba si el campo está VACÍO y NO es un número

Soy un estudiante principiante de JS e intento hacer alguna validación de formulario y estoy luchando con eso. Actualmente sufro de covid, por lo que es posible que mi cerebro no esté funcionando y pensando correctamente, pero necesito ayuda.

Básicamente, lo que estoy tratando de probar es que el campo "nombre" de mi formulario no está en blanco Y que no se ha ingresado un número. Puedo hacer que la parte en blanco verifique bien, pero la parte numérica me está desconcertando. Aquí está el código con el que estoy trabajando.

 function validateForm() { let x = document.forms["contact_form"]["myName"].value; if ((x == "") && (typeof x == 'number')) { alert("Name must be filled out properly."); return false; } }

Siguiendo las sugerencias... Parece que no estoy accediendo correctamente a los datos del formulario. Aquí están los datos del formulario al que intento acceder:

 <form class="contact_form" method="put" action="confirmation.html"> <label for="myName">Name:</label> <input type="text" name="myName" id="myName" required />

¡Gracias por cualquier ayuda!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Dado que está utilizando && , se garantiza que la condición evaluará false . Debe usar el operador OR ( || ) aquí.

Además, el tipo del valor de x siempre es una cadena, debe convertir el valor en un número antes de la comparación, puede hacerlo agregando el prefijo + a la variable:

 if ((x == "") || (typeof +x == 'number')) {

Sin embargo, te sugiero que uses isNaN()

 if ((x == "") || !isNaN(x)) {

Manifestación:

 function validateForm() { let x = document.forms["contact_form"]["myName"].value; if ((x == "") || !isNaN(x)) { alert("Name must be filled out properly."); return false; } }
 <form name="contact_form"> <input name="myName"> <button onclick="return validateForm()">Click</button> </form>

about 4 years ago · Juan Pablo Isaza 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!