erforderliches Attribut funktioniert nicht im asp.net mvc
Habe ich eine einfache stark-typisierte Ansicht.
@model GoldForGold.Models.LogonModel
@{
ViewBag.Title = "Logins";
Layout = "~/Views/Shared/_Layout.cshtml";
}
Logins
@using (Html.BeginForm()) {
Account Information
@Html.LabelFor(m => m.UserName)
@Html.TextBoxFor(m => m.UserName, new { id = "txtUserName" })
@Html.ValidationMessageFor(m => m.UserName)
@Html.LabelFor(m => m.Password)
@Html.PasswordFor(m => m.Password, new { id = "txtPassword" })
@Html.ValidationMessageFor(m => m.Password)
@Html.CheckBoxFor(m => m.RememberMe)
@Html.LabelFor(m => m.RememberMe)
<input type="submit" value="Log On" onclick="getcredentials()" />
}
Modell-code ist hier.
public class LogonModel
{
[Required(ErrorMessage="please enter username")]
[Display(Name = "User name")]
public string UserName { get; set; }
[Required]
[DataType(DataType.Password)]
[Display(Name = "Password")]
public string Password { get; set; }
[Display(Name = "Remember me?")]
public bool RememberMe { get; set; }
}
Ich nichts sehe passiert auch, wenn ich nicht geben Sie einen Benutzernamen und ein Passwort.
Können Sie zeigen Sie uns Ihre Post-action-Methode.
InformationsquelleAutor user2465036 | 2013-11-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Für client-seitige Validierung müssen Sie jquery und jquery-validation.
nach, dass client-seitige Validierung muss aktiviert sein in der config:
für server-seitige Validierung können Sie Ihre Validierung Zustand mit:
InformationsquelleAutor MRB
Hier die komplette Lösung:
Fügen Sie die folgenden Skripts für Ihre Ansicht:
Ermöglichen Validierung im Web.Config:
Hinzufügen von Validierung element in der Ansicht:
Add Required-Attribut, um Sie Modell-element.
InformationsquelleAutor Vahagn Nahapetyan
Für den Datensatz, können Sie den folgenden code am Ende Ihrer anzeigen, um sicherzustellen, dass die
[Required]
Attribut erscheint in der Benutzeroberfläche:InformationsquelleAutor Cosmin Cretu
Einer anderen gotcha mit
[Required]
ist mit es auf ein integer-Feld (nicht nur beim speichern einen numerischen Wert, sondern auch sagen, wenn die Speicherung der id des ausgewählten Wertes in einer dropdown). Das wird nicht funktionieren, weil eine integer-Eigenschaft kann niemals null sein, und hat einen Standardwert von null, so wird immer einen Wert haben.In diesem Fall müssen Sie sicherstellen, dass das Feld deklariert ist, als eine null-integer, anstatt nur eine Zahl oder Erforderlich wird keine Wirkung haben. E. g.
oder verwenden Sie alternativ die
Range
Attribut zu stoppen null-ein akzeptabler Wert:InformationsquelleAutor tomRedox
jquery.validate.js/jquery.validate.unobtrusive.js sind in Ihrem Projekt enthalten? Seine seltsam, dein code sieht gut aus für mich.
Dieser link kann Ihnen helfen...
InformationsquelleAutor arvic.rivera
1 - Fügen Sie die Skripts anzeigen:
2 - Aktivieren der Validierung im Web.Config:
3 - Add-Validierung html-helper in den view:
4 - Add Required-Attribut, um Ihre Modell-element:
InformationsquelleAutor Jehad87