ASP.Net MVC 5 Html.BeginForm onsubmit et model avec l’atsortingbut requirejs

J’ai requirejs l’atsortingbut sur les propriétés de mon modèle, mais j’ai ajouté un “spinner” pour afficher la demande de traitement sous la forme onsubmit. Maintenant, même s’il n’a pas soumis le formulaire, il affiche le “spinner” que j’ai créé et collé sur la superposition, mais la zone de texte avec l’atsortingbut requirejs est active.

using (Html.BeginForm("Add", "UserAccount", FormMethod.Post, new { onsubmit="spinner()"})) { //Html.TextBoxes for model properties with required } 
function spinner() { $("#spinner").show(); }

S’agit-il d’un moyen de vérifier d’abord si l’atsortingbut “requirejs” est satisfait avant d’accéder à la fonction onsubmit?

Vous devez append la fonction submitHandler au validateur . Voici le code complet.

  

Je pense que vous avez besoin de la validation côté client avant que le formulaire ait été soumis. Vous avez ajouté l’atsortingbut requirejs sur les propriétés. Cela vous permet maintenant de valider la validation côté client.

 bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include("~/Scripts/jquery.validate*")); 

Ci-dessous la liste des js dont vous avez besoin

   

Vous avez besoin de jquery.validate.unobstrusive.js pour que la validation du client fonctionne

Deuxièmement, vous devez également modifier la configuration Web.

   ...   ...  

Pour plus d’informations, trouvez ce qui est une validation discrète sur ce blog.

En utilisant ce formulaire, votre formulaire n’est pas soumis avant que tous les champs soient correctement validés, comme Required , Range etc., que vous avez mentionnés dans les propriétés.

Après avoir ajouté ce groupe de code, vous pouvez valider le formulaire en cliquant sur le bouton et en dessous.

 $("#btn1").click(function (e) { e.preventDefault(); // now sortinggger the form validation, result is 1 or 0 var result = $('form').valid(); if(!result) { // Do some stuff if form is not valid } });