1
respuesta

[Duda] Duda respecto al formulario

Justo viendo la conclusion pense: hay alguna manera de que en el campo de telefono o correo electronico, sea obligatorio solamente uno, me refiero a que si he puesto el numero telefonico no sea obligatorio el correo o si puse correo ya, no sea obligatorio el telefono, con su correspondiente radio, o necesitariamos JS? la intencion es que el usuario no llene tantos tatos, en este caso hay telefono y whatsapp pero si solamente hubiera una de las 2 creo que seria util para el usuario

1 respuesta

¡Hola Ricardo!

Para lograr esto, necesitarás utilizar JavaScript. Puedes agregar un evento de cambio a los campos de teléfono y correo electrónico, y dentro de ese evento, verificar si uno de los campos está lleno. Si es así, puedes hacer que el otro campo no sea obligatorio.

Aquí tienes un ejemplo de cómo podrías hacerlo:

const telefonoInput = document.getElementById('telefono');
const correoInput = document.getElementById('correo');

telefonoInput.addEventListener('change', () => {
  if (telefonoInput.value !== '') {
    correoInput.removeAttribute('required');
  } else {
    correoInput.setAttribute('required', 'required');
  }
});

correoInput.addEventListener('change', () => {
  if (correoInput.value !== '') {
    telefonoInput.removeAttribute('required');
  } else {
    telefonoInput.setAttribute('required', 'required');
  }
});

En este ejemplo, asumí que los campos de teléfono y correo electrónico tienen los IDs "telefono" y "correo" respectivamente. Debes ajustar los IDs según los IDs reales de tus campos.

Recuerda que este código debe colocarse después de que se haya cargado el formulario y los campos estén disponibles en el DOM.

Aunque en este momento no seas necesario que te preocupes con la validación de formulario pues es algo que aun aprenderás.

Espero que esta solución te sea útil. Si tienes alguna otra pregunta, estaré encantado de ayudarte. ¡Buena suerte con tu proyecto!

Saludos!

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