【发布时间】:2012-04-06 03:00:50
【问题描述】:
我正在尝试使用 ListItems 列表将项目添加到下拉列表,但它没有获取值(仅获取文本)。
代码如下(根据我实际使用的代码进行了简化):
PositionDropDown.DataSource = GetPositionOptions();
PositionDropDown.DataBind();
private List<ListItem> GetPositionOptions()
{
List<ListItem> items = new List<ListItem>();
items.Add(new ListItem("",""));
items.Add(new ListItem("Top (main)", "TOP"));
items.Add(new ListItem("Bottom (full width)", "BTM"));
items.Add(new ListItem("Bottom Left", "MIL"));
items.Add(new ListItem("Bottom Middle", "MID"));
return items;
}
但是,呈现的 HTML 缺少 ListItem 构造函数的第二个参数中指定的值:
<option value=""></option>
<option value="Top (main)">Top (main)</option>
<option value="Bottom (full width)">Bottom (full width)</option>
<option value="Bottom Left">Bottom Left</option>
<option value="Bottom Middle">Bottom Middle</option>
为什么在渲染 HTML 时不使用指定的“值”而只是重复“名称”?我做错了什么?
【问题讨论】:
-
啊哈,该死的......现在看到了,但你自己也看到了:-)
标签: asp.net drop-down-menu generic-list