-->

MVC3 dropdownlistfor(MVC3 dropdownlistfor)

2019-09-17 09:52发布

我想提出一个下拉列表,编号为0-10。 因此,用户可以评价的东西。 目前,我有一个标签:@ Html.LabelFor(型号=> model.RATE)我如何修改这个代码,我将有一个下拉框? 而且该下拉框的值将被存储在model.RATE?

该标签的工作,但它会好得多有一个下拉菜单。

解:

@Html.DropDownListFor(model => model.RATE, Enumerable.Range(0,11).Select( x => new SelectListItem { Text = x.ToString() }));

Answer 1:

只要创建列表SelectListItem包含收视对象,然后使用Html.DropDownListFor存储在你的模型(评级Model.RATE )。

@{
    var ratings = new List<SelectListItem>();
    for( var i = 0; i <= 10; i++ ) {
        days.Add( new SelectListItem { Text = i.ToString(), Value = i.ToString(), Selected = Model.RATE == i } );
    }
}
@Html.DropDownListFor( x => x.RATE, ratings )


Answer 2:

@Html.DropDownListFor(model => model.RATE, new SelectList(Enumerable.Range(0, 11)))

这将做数据绑定的形式和从表单



Answer 3:

@Html.DropDownListFor(m => m.RATE, Model.RateSelectList, "<- Select Option ->")

Model.RateSelectList将IEnumerable类型<SelectListItem>,m.RATE将是你的空整型(INT?)属性。 第三个参数是默认的文本,将显示是否m.RATE为null。



文章来源: MVC3 dropdownlistfor