Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

291
Vistas
Estoy usando Javascript para agregar guiones automáticamente al número de teléfono. Necesita modificar esto para eliminar también los guiones automáticamente, o encontrar una nueva solución

Encontré un poco de JS muy útil de otro hilo para dividir automáticamente los números, pero un subproducto de eso es que ahora han ingresado 10 números (número de teléfono de EE. UU.), pero si quieren eliminarlo y cambiarlo, tendrán para eliminar los guiones también. Me doy cuenta de que esto no es un gran problema, pero me molesta y quería encontrar una mejor solución.

Se me ocurren un par de opciones diferentes, pero no estoy seguro de qué es posible:

  1. Agregue/modifique mi código para que, a medida que eliminan, elimine automáticamente los guiones a medida que eliminan sus números, por lo que solo presionan la tecla de retroceso 10 veces en lugar de 12.

  2. Tienen la apariencia de guiones en el cuadro de texto, pero en realidad no están en el área de entrada de texto... como una "imagen de fondo", por así decirlo. Intenté hacer esto con un SVG de fondo para el área de texto, pero no pude resolver el problema de espaciar automáticamente el número de teléfono alrededor de los guiones falsos. En cuanto a esta posible solución, estoy de acuerdo con que estén allí todo el tiempo, incluso antes de que se escriba algo, o que aparezcan una vez que comiencen a escribir el número.

He buscado mucho pero no he encontrado nada para lo que necesito. Estoy seguro de que ya existe un hilo, pero no he buscado los términos correctos. si alguien tiene un enlace a uno, incluso eso sería increíble.

Aquí está mi código existente... espero que esto sea algo que pueda lograr agregando algo simple. Cualquier ayuda es muy apreciada.

 $('#phone').keyup(function(){ $(this).val($(this).val().replace(/(\d{3})\-?(\d{3})\-?(\d{4})/,'$1-$2-$3')) });
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Dado que el número solo se formatea cuando se ingresan un mínimo de diez números, puede intentar algo como esto.

 $('#phone').keyup(function(){ if( $(this).val().length < 10 ){ $(this).val($(this).val().replace(/-/g, '')) }else{ $(this).val($(this).val().replace(/(\d{3})\-?(\d{3})\-?(\d{4})/,'$1-$2-$3')) } });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <input type="text" id="phone">

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda