Momentan erstelle ich ein Onlineformular, daher habe ich ein Problem mit der Validierung des Optionsfelds. Ich habe es geschafft, eine Validierungsnachricht für alle meine Textfelder zu erstellen, aber es scheint so, als ob das Erstellen einer Validierungsnachricht für Radiobutton anders ist als das Erstellen einer Validierung für eine Textbox?
Validierungsnachricht für Optionsfeld in MVC
Mein Problem ist
I Radioknopf für Geschlecht habe, „männlich“ und „weiblich“, wie soll ich dieses Feld validieren?
Mein Ansichtsmodell
public class PersonalValidator
{
public int personalInfoId { get; set; }
[Required(ErrorMessage="Gender is required")]
public string gender { get; set; }
public string occupation { get; set; }
public Nullable<int> maritalId { get; set; }
public Nullable<int> registrationId { get; set; }
public Nullable<int> eduInfoId { get; set; }
public Nullable<int> monthlyId { get; set; }
}
Mein Razor
<tr>
<td> Gender</td>
<td colspan="2">
@Html.RadioButtonFor(model => model.personalValid.gender, "Male") Male
@Html.ValidationMessageFor(model => model.personalValid.gender)
@Html.RadioButtonFor(model => model.personalValid.gender, "Female") Female
@Html.ValidationMessageFor(model => model.personalValid.gender)
</td>
<tr>
mein Controller
[HttpPost]
public ActionResult TestValidation(RegisterInfoPA viewmodel)
{
using (var database = new TMXEntities())
{
if(ModelState.IsValid)
{
var personalVM = viewmodel.personalValid;
//save personal info
personalInfo personalDB = new personalInfo();
personalDB.gender = personalVM.gender;
personalDB.occupation = personalVM.occupation;
personalDB.maritalId = personalVM.maritalId;
personalDB.eduInfoId = personalVM.eduInfoId;
personalDB.monthlyId = personalVM.eduInfoId;
db.personalInfoes.Add(personalDB);
db.SaveChanges();
return RedirectToAction("SuccessfullyCreated");
}
return View();
}
}
Was müssen Sie validieren? Sind beide Radiobuttons zu Beginn ausgeschaltet und möchten Sie prüfen, ob eine ausgewählt wurde? –
Ja, beide Optionsfelder sind nicht ausgewählt. Wenn der Benutzer das Formular absenden möchte, wird die Bestätigungsmeldung angezeigt, die den Benutzer auffordert, eine auszuwählen. Benutzer kann es nicht abgewählt lassen. – user3431310
Was sind die Fehler, die Sie bekommen? – user3643092