gpt4 book ai didi

c# - 转发器中的 td 样式不会输出绑定(bind)值 ("This is not a scriptlet. Will output as plain text")

转载 作者:太空宇宙 更新时间:2023-11-03 16:33:54 25 4
gpt4 key购买 nike

我有一个中继器,其中有一个表,其中包含由中继器绑定(bind)的 td 的许多属性。我必须向每个 td 添加一个 runat 服务器,以便我可以添加一个可见属性,因为根据数据,某些 tds 是不可见的。

现在我已经添加了 runat 服务器 我在设置我的 tds 的背景颜色时遇到了问题。它是用一个绑定(bind)值完成的。当我将 <%%> 标签添加到我的样式时,它们将以纯文本形式输出,它甚至在我的 html 中说“这不是 scriptlet。将以纯文本形式输出”,而我的其余 <%%> 标签正确绑定(bind)。

为什么我的风格不再受约束?

我添加的其他标签会,但不是样式?

这是我的中继器的简化版。

   <table id="Table1" border="1" cellpadding="0" cellspacing="0" class="groups">
<tr id="Tr1" class="thead">

<td colspan='<%#AllowedItems.Count() %>' align="center">
items
</td>
</tr>
<tr class="theadL">
<td id="Td1" runat="server" visible='<%#ItemAllowed("Item1")%>'>
item1
</td>
<td id="Td2" runat="server" visible='<%#ItemAllowed("Item2")%>'>
item2
</td>
<td id="Td3" runat="server" visible='<%#ItemAllowed("Item3")%>'>
item 3
</td>

</tr>
<asp:Repeater ID="Repeater1" runat="server" DataSource='<%# GetData((int)Eval("Id"))%>'>
<ItemTemplate>
<tr>
<td id="Td9" title='<%#Eval("Item1Status")%>' runat="server" visible='<%#ItemAllowed("Item1")%>'
style='background-color: <%#Eval("Item1StatusColour")%>;'>
</td>
<td id="Td10" title='<%#Eval("Item2Status")%>' runat="server" visible='<%#ItemAllowed("Item3")%>'
style='background-color: <%#Eval("Item3StatusColour")%>;'>
</td>
<td id="Td11" title='<%#Eval("Item3Status")%>' runat="server" visible='<%#ItemAllowed("Item4")%>'
style='background-color: <%#Eval("Item4StatusColour")%>;'>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>

更新

样式呈现如下:

 style="background-color:&lt;%# &quot;&quot;+ Eval(&quot;Item1StatusColour&quot;)%>;" 

属性的所有其余部分都按照应有的方式呈现。

更新这是请求的 ItemAllowed 方法

     public bool ItemAllowed(string item)
{
//allowed items is a list<string>

return AllowedItems.Contains(item);
}

最佳答案

我建议的第一件事是使用 css 类而不是你正在做的事情。

当您将 html 元素与 runat=server 一起使用时,您会将其转换为 html 控件,而 .net 将呈现最终输出。您的特定问题源于 .net 使用 htmlencode 或类似的东西包装值。

我建议也许使用带有 onrowdatabound 事件的 gridview。然后您可以在代码隐藏中以编程方式执行任何操作。

关于c# - 转发器中的 td 样式不会输出绑定(bind)值 ("This is not a scriptlet. Will output as plain text"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9838658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com