foreach($array as $arr){
array_unshift($array, $arr);
array_pop($array);
}
Метод FindControl ищет управление сервером. Таким образом, это ищет средства управления с атрибутом "runat" набор к "серверу", как в:
<li runat="server ... ></li>
, поскольку Ваш < li> теги не являются управлением сервером, FindControl не может найти их. Можно добавить, что "runat" приписывают этим средствам управления или используют ClientScript. RegisterStartupScript для включения некоторого клиентского сценария для управления классом, например,
System.Text.StringBuilder sb = new System.Text.StringBuilder();
sb.Append("<script language=\"javascript\">");
sb.Append("document.getElementById(\"li1\").className=\"newClass\";")
sb.Append("</script>");
ClientScript.RegisterStartupScript(this.GetType(), "MyScript", sb.ToString());
Добавьте runat="server"
в Вашей странице HTML
, тогда используют свойство атрибута у Вашего asp. Сетевая страница как это
li1.Attributes["Class"] = "class1";
li2.Attributes["Class"] = "class2";
FindControl будет работать при включении runat = "сервер" в < li>
<li id="li1" runat="server">stuff</li>
Иначе Вы серверный код не может 'видеть' его.
необходимо установить runat = "сервер" как:
<li id="li1" runat="server">stuff</li>
Это найдет элемент Li и установил на него класс CSS.
using System.Web.UI.HtmlControls;
HtmlGenericControl liItem = (HtmlGenericControl) ctl.FindControl("liItemID");
liItem.Attributes.Add("class", "someCssClass");
Не забудьте добавить свой атрибут Runat = «Сервер»
, как упомянуто другими.