在visual studio 2013中的MVC 5中创建下拉列表
本文关键字:创建 下拉列表 MVC 中的 visual studio 2013 | 更新日期: 2023-09-27 18:18:50
嗨,我在mvc5中创建下拉列表时遇到了麻烦,这是我的模型:
public string CountryCode { get; set; }
public LocationChecker()
{
PopulateCountryCodes();
}
public IEnumerable<SelectListItem> CountryCodes { get; set; }
private void PopulateCountryCodes()
{
CountryCodes = new List<SelectListItem>();
CountryCodes.Add (new SelectListItem {Value = "1", Text =“UK”});
CountryCodes.Add (new SelectListItem {Value = "2", Text =“GB”});
CountryCodes.Add (new SelectListItem {Value = "3", Text =“IRL”});
}
,这是我的观点:
<h4>Countries</h4>
add a drop down list
@Html.DropDownListFor(m => m.CountryCode, Model.CountryCodes)
</div>
国家代码中的ADD。添加是红色的,无法解决,而且我在UK,GB和IRL之前有"表达式预期"错误。
任何帮助将不胜感激。这是我第一次使用mvc5 btw。
感谢Nav
我可以看到一个问题,引号字符不太适合Text属性。
这里有:
CountryCodes.Add (new SelectListItem {Value = "1", Text =“UK”});
CountryCodes.Add (new SelectListItem {Value = "2", Text =“GB”});
CountryCodes.Add (new SelectListItem {Value = "3", Text =“IRL”});
试试这个:
CountryCodes.Add (new SelectListItem {Value = "1", Text ="UK"});
CountryCodes.Add (new SelectListItem {Value = "2", Text ="GB"});
CountryCodes.Add (new SelectListItem {Value = "3", Text ="IRL"});
在后端,构建一个SelectList
countryCodes = new List<SelectListItem>();
countryCodes.Add(new SelectListItem() { Text = "theText", Value = "TheValue" });
分配给你的视图模型(这是在构造函数中,因此'this')
this.CountryCodes = new SelectList(countryCodes, "Value", "Text", "Please Select");
在前端(CountryCode是一个int,视图模型的成员)
@Html.DropDownListFor(model => model.CountryCode, this.Model.CountryCodes, new { placeholder = "Please select a Country Code", @class = "form-control", name = "CountryCodeSelected" })