Advertise with us

Check variable to set class value at runtime

I've the following code, it's supposed to check if a variable from a DataList, it's the same as a variable called mesActual,  

      <li id="Li1" class='<%#
(Convert.ToBoolean(Convert.ToString(Eval("Month")) ==Convert.ToString(mesActual))) ? "activa" : "no-activa"
%>'>
           <asp:LinkButton ID="lnkbtn" runat="server"CommandName="Select" CommandArgument='<%#Eval("Month")%>'><%#Eval("Month")%></asp:LinkButton>
           <div class="btn"><span><asp:Label ID="lbltot" runat="server"></asp:Label></span></div>
      </li>

On page load, it seems to work, first item is selected and assigned the class "activa", but when i click on the button, it reloads the page, i can see my variable "mesActual" changed, but the class of the li doesn't change.

Last updated:8/25/2014 2:15:17 AM

1 Answers

Sumit Kesarwani
Sumit Kesarwani

Hi Goti, 


Try runat="server", <%# %> only fires on DataBind():

<li id="Li1" runat="server" class='<%# Convert.ToString(Eval("Month")) == Convert.ToString(mesActual) ? "activa" : "no-activa" %>'>

Last updated:8/25/2014 2:15:17 AM

Answer