Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

[Duda] pattern

no entiendo por que no me exige en el campo de pasword la regla de la expresión regular es el mismo codigo que tiene el profesor descarge el archivo zip pero al momento de probarlo no me exige las reglas de la expresión regular :

<body>
    <main class="container flex flex--column flex--center">
        <div class="cadastro-cabecalho">
            <img src="./assets/img/doguito.svg" alt="Logo Doguito" class="registry-header__logo">
            <h1 class="registry-header__title">PetShop</h1>
        </div>
        <section class="cartao">
            <h2 class="card__title">Completa tu registro</h2>
            <form action="./registro_concluido.html" class="formulario flex flex--column">
                <fieldset>
                    <legend class="form__label">Información básica</legend>
                    <div class="input-container">
                        <input name="name" id="name" class="input" type="text" placeholder="Nombre" required>
                        <label class="input-label" for="name">Nombre</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                    <div class="input-container">
                        <input name="email" id="email" class="input" type="email" placeholder="Email" required>
                        <label class="input-label" for="email">Email</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                    <div class="input-container">
                        <input name="password" id="password" class="input" type="password" placeholder="Contraseña" pattern="^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#$%^&*_=+-]).{8,12}$" title="Al menos 6 caracteres, máximo 12, debe contener una letra minúscula, una letra mayúscula, un número y no puede contener caracteres especiales." required>
                        <label class="input-label" for="password">Contraseña</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                </fieldset>
                <fieldset>
                    <legend class="form__label">Información personal</legend>
                    <div class="input-container">
                        <input name="birth" id="birth" class="input" type="text" placeholder="Fecha de nacimento">
                        <label class="input-label" for="birth">Fecha de nacimiento</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                    <div class="input-container">
                        <input name="phoneNumber" id="phoneNumber" class="input" type="text" placeholder="Número telefónico">
                        <label class="input-label" for="phoneNumber">Número telefónico</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                </fieldset>
                <fieldset>
                    <legend class="form__label">Dirección</legend>
                    <div class="input-container">
                        <input name="cep" id="cep" class="input" type="text" placeholder="CEP">
                        <label class="input-label" for="cep">Dirección completa</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                    <div class="input-container">
                        <input name="city" id="city" class="input" type="text" placeholder="Ciudad">
                        <label class="input-label" for="city">Ciudad</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                    <div class="input-container">
                        <input name="state" id="state" class="input" type="text" placeholder="Estado">
                        <label class="input-label" for="state">Estado</label>
                        <span class="input-message-error">Este campo no es valido</span>
                    </div>
                </fieldset>
                <button class="button" type="submit">Registrar</a>
            </form>
        </section>
    </main>
</body>
</html>
1 respuesta

¡Hola Gerson!

Entiendo que estás teniendo problemas con la validación de la expresión regular en el campo de contraseña. Según el código que compartiste, la expresión regular debería exigir al menos 6 caracteres, máximo 12, una letra minúscula, una letra mayúscula, un número y un carácter especial.

Una posible razón por la cual la validación no está funcionando correctamente es que el navegador que estás utilizando no es compatible con la validación de expresiones regulares en los campos de contraseña. Algunos navegadores pueden no admitir ciertos patrones de expresiones regulares.

Te recomendaría probar tu código en diferentes navegadores para ver si el problema persiste. También puedes verificar si hay algún error en la consola del navegador que pueda indicar el motivo por el cual la validación no está funcionando.

Si el problema persiste, una solución alternativa sería validar la contraseña en el lado del servidor. Puedes utilizar un lenguaje de programación como JavaScript o PHP para realizar la validación antes de procesar los datos del formulario.

Espero que esta información te sea útil. Si tienes alguna otra pregunta, no dudes en preguntar. ¡Buena suerte con tu proyecto!

Espero haber ayudado y buenos estudios!

Si este post te ayudó, por favor, marca como solucionado ✓. Continúa con tus estudios! :)