2017-04-16 10 views
0

私はドロップダウンリストを持っていると私はID:ListItemの

<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

なぜそれが必要ですか?そして、 'ListItem'は' Text'と 'Value'プロパティを持っていますので、それらを使うことができます:' ' – VDWWD

答えて

2

でそれぞれのListItemを割り当てたいことがあるので、ListItemのは、ID性質を持っていませんコントロールから派生しないので、IDを持っていません。

あなたはListItemCollection(Itemsプロパティ)から投稿されましたListItemの値を検索する場合、あなたはあなたがリスト項目オプションAttributesを使用して要素Idを追加することができthis-

Dim listItem As ListItem = ATime.Items.FindByValue(Request.Form("9AM-5PM")); 
0

のように行うことができます。レンダリングされたHTML要素は、これまでどのIDあなたはに渡します。

protected void Page_Load(object sender, EventArgs e) 
    { 
     ListItem listItem = new ListItem("Item 1"); 
     listItem.Attributes.Add("id", "ListItem-1"); 
     ATime.Items.Add(listItem); 
    } 
0

をあなたのリスト項目の属性としてIDを有することを意味場合まあ、それから、もちろん、あなたがそれを行うことができます。あなたはListItemAttributesコレクションを利用する必要があります。

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++; 
} 
関連する問題