c# - Select Validation Not Working ASP.NET MVC4 -
my select list data : list of strings
public static class questionssecretes { public static readonly ilist<string> liste_questions_secretes = new list<string>() { "selectionner une question", "quelle était la couleur de votre première voiture ?", "quel est le nom de votre école primaire ?", "quel est le nom de votre premier animal de compagnie ?", "quel est votre plat préféré ?", "quelle était la marque de votre première voiture ?" , "quel est le nom de jeune fille de votre mère ?", "quel est le nom de votre commune de naissance ?", }; }
viewmodel : annotation attribute
[required(errormessage = "veuillez selectionner votre question secrete ")] public string questionsecrete { get; set; }
i tried 1 :
[stringlength(int32.maxvalue, minimumlength = 5, errormessage = "veuillez selectionner votre question secrete")]
*my view : set value of first element string.empty in order fire validaion , bu no chance *
<div class="inputs-block"> <div class="col-md-12 col-sm-12"> <div class="col-md-2 col-sm-2 marg8">question secrete : </div> <div class="col-md-8 col-sm-8" style="padding-left: 10px; padding-right: 10px;"> <label class="selct"> <select name="questionsecrete" id="questionsecrete"> <% foreach (var item in questionssecretes.liste_questions_secretes) {%> <%if (item.equals(questionssecretes.liste_questions_secretes[0])) {%> <option value="<%: string.empty %>"><%: item %></option> <%}else if (!string.isnullorempty(model.questionsecrete) && model.questionsecrete.equals(item)) {%> <option value="<%: item %>" selected="selected"><%: item %></option> <%}else{ %> <option value="<%: item %>"><%: item %></option> <%} %> <%} %> </select> </label> <div class="text-danger"> <%: html.validationmessagefor(m => m.questionsecrete)%> </div> </div> </div>
i can't validation message on select work. thnaks valuable time
not sure why defining select manually. can use html.dropdownlistfor
extension method generate select control.
<%: html.dropdownlistfor(model => model.questionsecrete, new system.web.mvc.selectlist(model.liste_questions_secretes ), string.empty, new {@class="form-control"})%> <%: html.validationmessagefor(model => model.questionsecrete)%>
using above extension, rendered html shows select control blank item. also, validation fired if user not choose item in select while submitting form.
the model property defined
[required(errormessage = "veuillez selectionner votre question secrete ")] public string questionsecrete { get; set; }
i have created this dotnet fiddle demonstrate example. can run fiddle see validation behavior.
Comments
Post a Comment