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

Popular posts from this blog

javascript - Chart.js (Radar Chart) different scaleLineColor for each scaleLine -

apache - Error with PHP mail(): Multiple or malformed newlines found in additional_header -

java - Android – MapFragment overlay button shadow, just like MyLocation button -