使用内联脚本更改HTML attr

时间:2009-12-14 02:05:47

标签: asp.net css gridview inline-scripting

我试图这样做:

  <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>

在这段代码中,我想根据来自数据库的数据的Status字段来更改messageHeader样式属性。如何使用内联脚本执行此操作。正如您可能看到的那样,我尝试在messageHeader的样式attr处这样做,但它无法解决。

感谢。

1 个答案:

答案 0 :(得分:2)

在您的style属性中,您需要输入以下内容:

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