如何在Code Behind中检索HTML元素

时间:2011-10-05 06:57:03

标签: c# asp.net

我使用asp.net和C#4。

我想知道是否可行以及如何在Code Behind中检索“Normal”(不是asp.net)元素。

例如:我有一个<li></li>,我希望从我的逻辑中得到它,并且设置为Visible to False。

目前我尝试用:

更改MarkUp
    <li ID="li-item" runat="server">
    // Does not work I get Error: ID no identified....

我是Asp.Net的新手,请给我一些代码示例。感谢您的支持。 PS:我希望不要投票,因为这是一个太微不足道的问题:)

3 个答案:

答案 0 :(得分:3)

"li-item"不是有效的标识符。您需要关闭li代码。

尝试:

<li ID="li_item" runat="server"></li>

(我使用了下划线代替-

现在它应该工作

答案 1 :(得分:1)

如果它有一个id和runat = server,那么你应该能够以HtmlGenericControl http://msdn.microsoft.com/en-us/library/system.web.ui.htmlcontrols.htmlgenericcontrol.aspx的身份访问它。

答案 2 :(得分:0)

<ul runat="server" id="ULSlider" class="slider_bg_container">
       <%-- <li>
            <img src="images/Home_Main.jpg" alt="" width="704" height="312" />
        </li>
        <li>
            <img src="images/Slde1.jpg" alt="" width="704" height="312" />
        </li>
        <li>
            <img src="images/Slde2.jpg" alt="" width="704" height="312" />
        </li>
        <li>
            <img src="images/Slde3.jpg" alt="" width="704" height="312" />
        </li>
        <li>
            <img src="images/Slde4.jpg" alt="" width="704" height="312" />
        </li>--%>
    </ul>

在代码中我使用它

protected void LoadData()
    {
        ImageGalleryBAL objImageBAl = new ImageGalleryBAL();
        DataSet ds=objImageBAl.ImageGallery_GetALLImageForSlider();
        String s="";
        foreach (DataRow dr in ds.Tables[0].Rows)
        {
            string imgUrl =ConfigurationManager.AppSettings["SiteURL"]+ dr["ImageName"].ToString();
            string AltText = dr["AltText"].ToString();
            s=s+"<li><img src='"+imgUrl+"' alt='"+AltText+"' width='704' height='312' /> </li>";
        }
        ULSlider.InnerHtml = s;

    }