我如何“动态”添加css类?

时间:2009-11-19 12:09:12

标签: c# .net asp.net

在我的aspx文件中,我在转发器中有以下html代码:<div class="someItem ">

现在,如果Eval("Approved") == true,那么我想将已批准的类添加到div中。
所以新的html将是<div class="someItem approved">

我尝试过这样的事情:

<%# if(Eval("Approved")) approved %>

但这并没有奏效。有什么想法吗?

4 个答案:

答案 0 :(得分:2)

您可以将div作为服务器控件 - &gt;

<div id="myDIV" class="myClass" runat="server"></div>.

然后您可以直接从后面的代码访问它,如

myDIV.Attributes["class"] = "classOfYourChoice";

看到这个 - &gt; How to edit CSS style of a div using C# in .NET

答案 1 :(得分:1)

如果项目被批准<div id="someItem">,那么最好考虑这个问题,然后如果任何事情的评估为真,则添加批准的课程。

<div id="someItem" "<%# Eval("Approved") ? Response.Write("class=\"approved\"") : "" %>">

答案 2 :(得分:1)

如果无法在数据绑定#line中工作。

所以你可以通过以下方式解决这个问题:

<%# isApproved = Convert.ToBoolean(Eval("Approved").ToString()) %>
<% if(isApproved){ %>
  <div class="someItem approved">
<%}%>

不要忘记在后面的代码中将isApproved声明为受保护。

另外请看一下这个问题:

Is it possible to use Data-Binding Expressions directly in markup to show/hide content?

这可以回答你问题中最重要的部分。

答案 3 :(得分:0)

您可以使用asp.net面板并从后面的代码中控制它的操作。面板呈现为DIV,您可以在运行时访问它的CssClass。