C# 下拉列表未选择正确的值
以下代码有什么问题C# 下拉列表未选择正确的值,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,以下代码有什么问题 @Html.DropDownListFor(model => model.title, new List<SelectListItem> { new SelectListItem { Text = "Other" , Value = "Other"}, new SelectListItem { Text = "Mr", Value = "Mr" }, new SelectListItem { Text = "M
@Html.DropDownListFor(model => model.title, new List<SelectListItem>
{
new SelectListItem { Text = "Other" , Value = "Other"},
new SelectListItem { Text = "Mr", Value = "Mr" },
new SelectListItem { Text = "Mrs", Value = "Mrs" },
new SelectListItem { Text = "Ms", Value = "Ms" },
new SelectListItem { Text = "Miss", Value = "Miss" }
},
new { @class = "form-control" })
@Html.DropDownListFor(model=>model.title,新列表
{
新建SelectListItem{Text=“Other”,Value=“Other”},
新建SelectListItem{Text=“Mr”,Value=“Mr”},
新建SelectListItem{Text=“Mrs”,Value=“Mrs”},
新建SelectListItem{Text=“Ms”,Value=“Ms”},
新建SelectListItem{Text=“Miss”,Value=“Miss”}
},
新的{@class=“表单控制”})
上面允许我选择值并将其保存到表中,但在进行编辑时,不会选择保存的值
例如,在编辑显示“其他”的现有数据时,使用“Mr”保存数据
为什么?请尝试以下方式使用:
@Html.DropDownListFor(model => model.title, new SelectList(new List<SelectListItem>
{
new SelectListItem { Text = "Other" , Value = "Other"},
new SelectListItem { Text = "Mr", Value = "Mr" },
new SelectListItem { Text = "Mrs", Value = "Mrs" },
new SelectListItem { Text = "Ms", Value = "Ms" },
new SelectListItem { Text = "Miss", Value = "Miss" }
},
"Value",
"Text",
Model.Title),
new { @class = "form-control" })
这是最糟糕的
它在这一事业中起作用,但在上述事业中不起作用
@Html.DropDownListFor(model => model.PreferredContact, new List<SelectListItem>
{
new SelectListItem { Text = "Other" },
new SelectListItem { Text = "Telephone", Value = "Telephone" } ,
new SelectListItem { Text = "Email", Value = "Email" },
new SelectListItem { Text = "Post", Value = "Post" }
}, new { @class = "form-control" })
@Html.DropDownListFor(model=>model.PreferredContact,新列表
{
新建SelectListItem{Text=“Other”},
新建SelectListItem{Text=“Telephone”,Value=“Telephone”},
新建SelectListItem{Text=“Email”,Value=“Email”},
新建SelectListItem{Text=“Post”,Value=“Post”}
},新的{@class=“form control”})
好的
我发现了问题
您不能将“title”作为名称。标题是HTML5上的一个属性。我将该字段重命名为dTitle,它可以工作您是否检查了
模型中传递的内容。标题
?是,当我显示模型时显示“Mr”。title@LeBlues-不是在显示时,我是问当您绑定此视图时,您必须传递模型,对吗?在该模型中,所有权的价值是什么?如果财产title
的价值为“Mr”,则将选择第二个选项。
@Html.DropDownListFor(model => model.PreferredContact, new List<SelectListItem>
{
new SelectListItem { Text = "Other" },
new SelectListItem { Text = "Telephone", Value = "Telephone" } ,
new SelectListItem { Text = "Email", Value = "Email" },
new SelectListItem { Text = "Post", Value = "Post" }
}, new { @class = "form-control" })