MVC 总计一

  MVC总计一:主要内容,弱类型中显示可编辑的列表。

     一:显示列表,如:@Html.TextBox("ID_"+i+"",@Model[i].ID),new{}),for遍历数据,并设置i为标识 。DropDownList,遍历数据源,如果数据源其中一条数据相等于@Model[i].字段,则设置Selected选中,否则不选中。

    二:验证字段,如js Validate :$.validator.addMethod("class_"+i+"",function(),"error Message"),class是验证控件的class,必须是唯一的

     

View:

弱类型:

@model List<T>

for(int i=0,i<Model.Count,i++)

{

@Html.TextBox("Email_"+i+"",Model[i].Email, new{@class="email_"+i+"",@onchange="Change("+i+")"})

@foreach(var item in ViewBag.SexList )

{

if(item.Value==@Model[i].Sex)

{

item.Selected=true;

}else{

item.Selected=false;

}

}

@Html.DropDownList("Sex_"+i+"",ViewBag.SexList as IEnumable<SelectListItem>,new {@style="80%"})

}

<script>

//验证email_i

function Change(i){

$.validator.addMethod("email_"+i+"",function(value,element){

var result=true;

return this.optional(elenment) || /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/;

});

}

</script>

Controller:

public ActionResult Index()

{

List<T> t=new List<T>;

List<SelectListItem> SexList = new List<SelectListItem> ();//读取数据
PostList.Insert(0, new SelectListItem { Text = "请选择", Value = "" });
ViewBag.SexList = SexList ;

return View(t);

}

原文地址:https://www.cnblogs.com/huangchenqin/p/6963983.html