2009-12-14 5 views
0

je tentais de le faire:HTML attr avec les scripts en ligne

<asp:GridView ID="gvBugList" runat="server" AutoGenerateColumns="False" ShowHeader="False" 
     DataSourceID="linqDSBugList" Width="100%" AllowPaging="true" PageSize="20" DataKeyNames="BugID"> 
     <Columns> 
     <asp:TemplateField> 
      <ItemTemplate> 
      <div class="messageHeader" id='<%# String.Format("Message_{0}",Eval("BugID")) %>' style='<% if(Eval("Status") == true) return "background:green";%>'> 
       <a href="#" onclick="BuggyBag.openMesage(this)"> 
       <%#Eval("Subject") %></a> 
      </div> 
      <div class="messageCollapse"> 
       <b>Message :</b><p> 
       <%# Eval("Message") %> 
       </p> 
       <input type="button" onclick="BuggyBag.SetStatus(this,true)" value="Set Resolved" 
       id='<%#Eval("BugID") %>' /> 
      </div> 
      </ItemTemplate> 
     </asp:TemplateField> 
    </Columns> 
</asp:GridView> 

Dans ce code, je souhaite modifier MessageHeader propriétés de style selon champ Etat dont les données provenant de la base de données. Comment puis-je faire cela avec les scripts en ligne. Comme vous pouvez le voir, j'ai essayé de le faire au style attr de messageHeader mais ça ne marcherait pas.

Merci.

Répondre

2

attribut que vous votre style intérieur besoin de mettre les éléments suivants:

<%= ((bool)Eval("Status")) ? "background:green" : "" %> 
+0

En fait, il ne fonctionne pas sur mon problème. Mais j'ai trouvé la solution après avoir légèrement modifié votre code: 'style = <% # ((bool) Eval (" Status ") == true)? "background: green": ""%> ' – Tarik

+0

Bummer, je n'ai pas fait Evals and Binds depuis si longtemps (merci MVC) que j'ai oublié le casting. Avoir mis à jour avec votre code. –

+0

MVC vaut-il vraiment la peine de quitter les pages web old school? – Tarik

Questions connexes