I have experience with web frameworks for PHP (Laravel) and Python (Django). But I'm lost with C# and ASP.NET!
I'm trying to make a login page with ASP.NET core and C#. Using an example, I have a login form, with username and password input fields:
<div asp-validation-summary="None" class="text-danger"></div>
<label asp-for="Username"></label>
<input asp-for="Username" class="form-control" />
<span asp-validation-for="Username" class="text-danger"></span>
<label asp-for="Password"></label>
<input asp-for="Password" class="form-control" />
<span asp-validation-for="Password" class="text-danger"></span>
and in my view-model:
[Required(ErrorMessage = "** Localized error message **")]
[Display(Name = "Username:", Prompt = "Username")]
public string Username { get; set; }
[Required(ErrorMessage = "** Another localized error message **")]
[DataType(DataType.Password)]
[Display(Name = "Password:", Prompt = "Password")]
public string Password { get; set; }
Everything works ok! If I don't put a username and/or password on form, the localized error message appears correctly. But if I provide an invalid username/password, a generic error (with ul, li) appears at top of the form. It's ok, but I like to display a toastr in place, like:
toastr.error(errorMessageOfInvalidLogin);
How I can check if a form is valid in client-side? I already included the toastr, and I can call 'manually'. But I don't have any ideia how to call this javascript only when form is invalid, and how recover the error message.