我有一些表格数据,当标签有一些特定值我需要让它炫耀。
尝试通过造型TD来做。
我的C#设置Label1.text
你能想到其他任何方式吗?它引发了歧义错误。
<% if (Label1.Text == "1") { %>
<td style="background:#ffedad; border:#e3a345; color:#cd5c0a"><asp:Label ID="Label1" runat="server" /></td>
<% } else {%>
<td><asp:Label ID="Label1" runat="server" /></td>
<% } %>
修改
做了别的事情(更清洁)。
在我的css文件上处理变量后面的一些代码以及一些新的td.alt
以获取标签的值。如果它是1
,那么我设置了一个
classLabel
变量为alt
,然后我在class
td
<td class="<%classLabel%>"><asp:Label ID="Label1" runat="server" /></td>
仍然,我在我的aspx页面的最后一行得到错误,错误是什么想法?
答案 0 :(得分:1)
您可以调用代码隐藏方法,该方法将返回可由浏览器直接呈现的格式化HTML字符串。在该代码隐藏方法中,您几乎可以执行任何操作:访问任何类型的数据库或任何业务逻辑。
可能的返回div元素封装内容(没有样式)。 通过在代码隐藏方法中使用if-else逻辑,可以返回具有不同id或类的div。然后你可以编写不同的CSS样式来应用于不同的div。
<% if (Label1.Text == "1") { %>
<td style="background:#ffedad; border:#e3a345; color:#cd5c0a">
<%# generateOutput() %></td>
<% } else {%>
<td> <%# generateOutput() %> </td>
<% } %>
不是在asp.net标记中使用if-else,而是可以使用
<%# generateOutput() %>
并从代码中返回整个内容并在CSS文件中编写样式。
如果要显示的内容较少或较不复杂,则第二种方法可行,否则您可能更愿意采用第一种方法。
但是,如果您直接从数据库访问数据,您可以使用GridView等ASP.NET数据控件,在模板中设置样式,并使用查询字符串或表单值过滤数据。
答案 1 :(得分:1)
您可以尝试使用一行:
<td <%=Label1.Text != "1"?"":"style='background:#ffedad; border:#e3a345; color:#cd5c0a'"%>><asp:Label ID="Label1" runat="server" /></td>
设置后面的样式代码并使用css类将更清晰恕我直言
希望这会有所帮助