我有一个DropDownListFor静态列表的月份数,如果我选择第一个月1和make编辑将找到DropDownListFor重复第一个月像这样
DropDownListFor代码:
@Html.DropDownListFor(model=>model.FinancialInfo.FinancialExpiryMonth, (IEnumerable<SelectListItem>)ViewBag.FinancialMonths, (Model.FinancialInfo == null || Model.FinancialInfo.ExpiryDate == null) ? String.Empty : Model.FinancialInfo.ExpiryDate.Value.Month.ToString(), new { @class = "description-text" })
注意:FinancialInfo.FinancialExpiryMonth是元数据元素,使其成为View模型。
ViewBag.FinancialMonths的代码:
ViewBag.FinancialMonths = ListOfNumbers(1, 12).Select(m => new SelectListItem { Text = m.ToString(), Value = m.ToString() });`
ListOfNumbers的代码:
public List<int> ListOfNumbers(int startNum, int endNum)
{
List<int> listOfNumbers = new List<int>();
for (int i = startNum; i <= endNum; i++)
{
listOfNumbers.Add(i);
}
return listOfNumbers;
}
答案 0 :(得分:1)
您看到的第一个“1”是占位符,它由
生成(Model.FinancialInfo == null || Model.FinancialInfo.ExpiryDate == null) ? String.Empty : Model.FinancialInfo.ExpiryDate.Value.Month.ToString()
将下拉列表定义替换为:
@Html.DropDownListFor(model=>model.FinancialInfo.FinancialExpiryMonth, (IEnumerable<SelectListItem>)ViewBag.FinancialMonths, "Please select...", new { @class = "description-text" })
您会看到'请选择...'作为占位符
为了预先选择一个月,只需为model.FinancialInfo.FinancialExpiryMonth
答案 1 :(得分:0)
只需使用public function category()
{
$category=DB::select('select category_name,category_id from categories');
return view('admin.category_table')->with(['category' => $category]);
}
中的Lambda表达式,并在模型具有值时选择所选条件为真
Enumerable.Range