我有一个下拉列表,我想为每个listitem分配一个id
<asp:DropDownList id="ATime" runat="server" CssClass="form-control">
<asp:ListItem>--Select--</asp:ListItem>
<asp:ListItem>8AM-2PM</asp:ListItem>
<asp:ListItem>9AM-5PM</asp:ListItem>
<asp:ListItem>6PM-12AM</asp:ListItem>
<asp:ListItem>3PM-9PM</asp:ListItem>
<asp:ListItem>Other</asp:ListItem>
</asp:DropDownList>
答案 0 :(得分:2)
ListItem 没有 ID 属性,因为它不是从控件派生的,因此它没有 ID 。
如果要搜索从ListItemCollection(Items属性)发布的ListItem值,那么你可以这样做 -
Dim listItem As ListItem = ATime.Items.FindByValue(Request.Form("9AM-5PM"));
答案 1 :(得分:0)
您可以使用列表项选项Id
添加元素Attributes
。渲染的HTML元素将会传入您的身份。
protected void Page_Load(object sender, EventArgs e)
{
ListItem listItem = new ListItem("Item 1");
listItem.Attributes.Add("id", "ListItem-1");
ATime.Items.Add(listItem);
}
答案 2 :(得分:0)
如果您的意思是将ID作为列表项的属性,那么当然,您可以这样做。您需要使用Attributes
ListItem
的集合,方法如下。
int idx = 0;
foreach(ListItem item in ddl.Items)
{
// if you'd like the id populated with the text value
item.Attributes.Add("id", item.Text);
// if you'd like the id populated with the index value
//item.Attributes.Add("id", idx.ToString());
idx++;
}