DropDownList.SelectedItem.Text-html未标记为selected = selected c#

时间:2018-08-22 15:38:50

标签: c# asp.net data-binding html-select dropdown

我将DropDownList与数据绑定,并根据值选择选项。

如果我选择带有Value的DropDownList,则一切正常。这意味着如果我执行selectedValue,那么它将在前端显示选择内容,并且还会在HTML中显示“ selected = selected”。但是,如果我使用SelectedItem.Text,那么它只会在前端显示选择内容,而HTML不会标记HTML中的slected = selected。

我希望HTML在HTML中标记“ selected = selected”,以便可以在代码中使用selected值。

请在下面查看我的代码,其中包含选定的值,并且该代码可以正常运行:

DepartmentList.DataTextField = "Title";
DepartmentList.DataValueField = "Id";
DepartmentList.SelectedValue = DepartmentID; 
DepartmentList.DataSource = resultLoc.OrderBy(item => item.Title);
DepartmentList.DataBind();

请查看屏幕截图:

https://snag.gy/VSmz48.jpg

请在下面查看带有所选名称的代码,它不能正常工作,因为它在下拉列表中显示了所选的名称,但没有在HTML中标记为selcted = selcted。

请在下面查看带有所选名称的我的代码,该代码不起作用:

DepartmentList.DataTextField = "Title";
DepartmentList.DataValueField = "Id";
DepartmentList.SelectedItem.Text = DepartmentName; // Finance
DepartmentList.DataSource = resultLoc.OrderBy(item => item.Title);
DepartmentList.DataBind();

请查看屏幕截图:

https://snag.gy/hok3FV.jpg

2 个答案:

答案 0 :(得分:1)

作为新成员,没有意见的声誉,因此尝试通过SO进行上述评论中提到的一些研究来提供帮助,并找到了这个答案。请尝试这个-

DepartmentList.Items.FindByText(DepartmentName).Selected = true;

How can you set the selected item in an ASP.NET dropdown via the display text?

how to select with DropDownList.text

以及此处的“文本和值”属性的说明。

SelectedValue vs SelectedItem.Value of DropDownList

答案 1 :(得分:0)

这是您想要做的:

DepartmentList.SelectedValue = DepartmentList.Items.FindByText(DepartmentName).Value;

有关更多详细信息,请参见this nearly identical question