• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

236
Views
Aplicación ASP.Net Core/validación JS: solicite al usuario que actualice el formulario o salga de la página

Tengo una aplicación ASP.Net Core/Razor con un formulario simple:

 <form method="post" id="my_form"> ... </form>

Estoy usando la validación integrada del lado del cliente para cosas como <input ...required> o <input type="number" min="0" ...> (Microsoft incluye la validación jQuery en sus plantillas de proyecto MSVS) . Todo eso funciona bien.

También estoy haciendo una validación personalizada adicional en ciertos campos. Me gustaría darle al usuario la opción de rehacer el formulario o salir del formulario por completo y redirigir a una página diferente:

 <script type="text/javascript"> // Form submit $('#my_form').on('submit', function (e) { console.log('validateForm...'); //debugger; // Check basic form validation let isValid = e.target.checkValidity(); if (!isValid) return false; // Validate custom field let myCustomField = $('#myCustomField').val(); if (myCustomField != 'xyz') { let response = confirm('MyCustom field is invalid: Update webform?'); if (response) { return false; // Return to webform } else { window.location.href = "./"; // Redirect to app's landing page } ... return true; } }); </script>

PROBLEMA:

window.location.href no me redirige inmediatamente. El JS de validación continúa y el formulario se envía al servidor.

P: ¿Debería usar algo como location.replace() en su lugar? ¿O debería tomar un enfoque completamente diferente?

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

0

Para responder a Ruikai Feng: no, Ajax habría derrotado todo el propósito de lo que estaba tratando de hacer. Quería permitirle al usuario opcionalmente a) regresar al formulario web para "corregirlo", o b) dejar el formulario por completo y saltar a una página DIFERENTE . Ajax no habría hecho esto.

Decidí "despejar", y solo hacer que mi función de validación JS devuelva "falso" si encuentra algo incorrecto. Esto SIEMPRE devuelve al usuario al formulario web. Pueden "arreglar" el problema o navegar manualmente a una página diferente.

about 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error