我在AutoPostBack設置爲True的頁面上有一個dropdownlist控件。在頁面的初始加載時,我在DropDownList中的某些ListItems上設置了一個CSS類。由此產生的HTML看起來像這樣:ASP.NET dropdownlist控件可以在回發中保留列表項類嗎?
<select id="mySelect">
<option value="1">First</option>
<option value="2" selected="selected">Second</option>
<option value="3" class="favorite">Third</option>
<option value="4">Fourth</option>
<option value="5" class="favorite">Fifth</option>
</select>
回發後ListItems失去他們的CSS類。它現在看起來像這樣。
<select id="mySelect">
<option value="1">First</option>
<option value="2">Second</option>
<option value="3">Third</option>
<option value="4">Fourth</option>
<option value="5" selected="selected">Fifth</option>
</select>
是否有任何方式的下拉列表將回傳後記得個別listItems中的CSS類或我將需要以某種方式設置類自己回發後?
以下是將CSS添加到下拉列表中的代碼。它在PageLoad上運行,但不在PostBack上運行。
foreach(MyItem _myItem in MyItemList)
{
ListItem _listItem = new ListItem();
_listItem.Value = _myItem.ID.ToString();
_listItem.Text = _myItem.Title;
if(_myItem.IsFavorite)
{
_list.Attributes["class"] = "favorite";
}
ddlMyDropDown.Items.Add(_listItem);
}
科瑞
你是否通過代碼設置了這些類? – CodingGorilla 2011-03-22 19:01:40
是的。我手動創建每個ListItem對象,然後將其添加到DropDownList控件,而不是僅將List綁定到DropDownList。下面 – 2011-03-22 19:10:51
答案是有用 http://stackoverflow.com/questions/1313447/listitems-attributes-in-a-dropdownlist-are-lost-on-postback – 2012-11-23 15:26:30