加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

如何使用ASP.NET更改HTML页面元素的CSS类?

发布时间:2020-12-15 23:43:38 所属栏目:asp.Net 来源:网络整理
导读:我有几个 li在ASP.NET页面上具有不同id的元素: li id="li1" class="class1"li id="li2" class="class1"li id="li3" class="class1" 并可以使用JavaScript改变他们的课程: li1.className="class2" 但是有没有办法改变 li元素类使用ASP.NET?它可能是这样的
我有几个< li>在ASP.NET页面上具有不同id的元素:
<li id="li1" class="class1">
<li id="li2" class="class1">
<li id="li3" class="class1">

并可以使用JavaScript改变他们的课程:

li1.className="class2"

但是有没有办法改变< li>元素类使用ASP.NET?它可能是这样的:

WebControl control = (WebControl)FindControl("li1");
control.CssClass="class2";

但是FindControl()不符合我的预期.有什么建议么?

提前致谢!

解决方法

FindControl方法搜索服务器控件.也就是说,它查找属性“runat”设置为“server”的控件,如:
<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());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读