如果我有UpdatePanel
<asp:UpdatePanel ID="udPanel" runat="server">
...
</asp:UpdatePanel>
在渲染时创建此div
<div id="ctl00_udPanel">
如何在后面的代码中引用它来动态更改css类?
答案 0 :(得分:4)
您可以做的是在javascript中写出ClientID客户端,然后将jQuery与AddClass(未经测试的)一起使用:
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
$("#<%=udPanel.ClientID%>").addClass("MyClass");
</script>
答案 1 :(得分:1)
不幸的是,UpdatePanel
被认为是浏览器不可见的抽象(但实际上并非如此)。所以你不能为它申请一个类名。
唯一的方法是将类名应用于div
内的Panel
或ASP.NET UpdatePanel
。
答案 2 :(得分:0)
从我的脑海中,尝试udPanel.Attributes
。
答案 3 :(得分:0)
这是我能找到的最好的动态。您可以创建一个javascript函数来更改接受控件的clientID更改的css类,并将css类的字符串作为参数。您可以将此设置为在body的onload()方法中调用,动态传入clientID和css类。这使您可以更改页面的不同状态的css类。
HtmlGenericControl body = (HtmlGenericControl)uPanel.Page.Master.FindControl("masterBody");
body.Attributes.Add("onload", "setCSSClass('" + uPanel.ClientID.ToString() + "', '" + cssClassName + "')");