2012-07-26 97 views
2

如何客户端验证下拉列表框.....如何在客户端验证剃须刀mvc3中的下拉列表框?

  @Html.DropDownListFor(per => per.Gender, new[] { 
         new SelectListItem(){Text = "Male" , Value="Male"}, 
         new SelectListItem(){Text ="Female" , Value = "Female"}, 
        }, "Select Your Gender") 
      @Html.ValidationMessageFor(per => per.Gender) 

回答

1

包括jQuery的验证插件在您的视图脚本一起使用jQuery(如果在Layout.cshtml尚未refered)

@model SomeModel 
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script> 
<script src="@Url.Content("~/Scripts/jquery.validate.unobtrusive.min.js")" type="text/javascript"></script>  
@using (Html.BeginForm()) 
{ 

    @Html.DropDownListFor(per => per.Gender, new[] { 
         new SelectListItem(){Text = "Male" , Value="Male"}, 
         new SelectListItem(){Text ="Female" , Value = "Female"}, 
        }, "Select Your Gender") 
      @Html.ValidationMessageFor(per => per.Gender) 

    <input type="submit" /> 
} 

并确保SomeModel的性别属性是必需的

[Required] 
public string Gender { set;get;} 

更新您的web.config并设置叫AppSetting ClientValidationEnabled

<appSettings> 
    <add key="ClientValidationEnabled" value="true" /> 
    <add key="UnobtrusiveJavaScriptEnabled" value="true" /> 
</appSettings> 

现在,当你提交,它将执行客户端验证,如果JavaScript在浏览器中启用。

+0

其工作谢谢你,你能告诉我..如何在Dropdownlistbox下面显示错误信息? – Sham 2012-07-26 16:06:37

+0

它应该只是简单地改变@ Html.ValidationMessageFor调用的位置。玩一些CSS – Shyju 2012-07-26 16:09:59

+0

谢谢你Shyju .... – Sham 2012-07-26 16:27:42