在不使用 findcontrol 的情况下获取中继器内的 div
Get divs inside a repeater without using findcontrol
我想更改中继器中包含的 div 的背景颜色。在下面的代码中是这样的:<div id="<%# Eval("id") %>">
我的问题是我正在使用 divs id 来获取记录的引用(div 是此类记录的图形表示),所以我无法更改它,因为它是不是固定的控件 ID,我不能在后面的代码中将它与 findcontrol 一起使用来查找 div。我怎样才能做到这一点?
起初我想在div的style属性中添加Eval,比如:style='background-color:<%# Eval("Color")%>;'
,here有人建议可以,但对我不起作用.
颜色以包含十六进制值的 varchar 形式保存在数据库中。
<asp:Repeater runat="server" ID="rptDaFare" DataSourceID="SqlAttivitaDaFare">
<ItemTemplate>
<div id="<%# Eval("id") %>">
<div class="div-titolo" title="<%# Eval("Titolo") %>"><%# Eval("Titolo") %></div>
<div class="div-testo" title="<%# Eval("Note") %>"><%# Eval("Note") %></div>
<div>
<table style="width: 100%; margin-top: 0.5em; padding-right: 0.2em;">
<tr>
<td style="width: 50%; text-align: left;">
<asp:ImageButton runat="server" ImageUrl="~/images/gabri.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 8, True, False) %>' />
<asp:ImageButton runat="server" ImageUrl="~/images/giuse.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 2, True, False) %>' />
<asp:ImageButton runat="server" ImageUrl="~/images/robi.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 5, True, False) %>' />
</td>
<td style="width: 50%; text-align: right;">
<asp:LinkButton CommandName="delAttivita" CommandArgument='<%#Eval("ID")%>' runat="server" ID="lnkDelAtt" CausesValidation="False" OnClientClick="return confirm('Sei sicuro di voler eliminare questa attivita?');"><i class="fa fa-trash fa-lg" title="Elimina attività"></i></asp:LinkButton>
<asp:LinkButton CommandName="editAttivita" CommandArgument='<%#Eval("ID")%>' runat="server" ID="lnkEditAtt"><i class="fa fa-pencil-square fa-lg" title="Modifica attività"></i></asp:LinkButton>
</td>
</tr>
</table>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
如果 Color
的值是颜色的正确十六进制或字符串表示,那么它应该可以工作。但是你没有正确关闭 style
属性。
如果颜色是字符串表示(红、绿、蓝)
<div style="background-color: <%# Eval("Color") %>;">Lorem Ipsum</div>
如果颜色是 HEX 没有 #
<div style="background-color: #<%# Eval("Color") %>;">Lorem Ipsum</div>
或与 #
<div style="background-color: <%# Eval("Color") %>;">Lorem Ipsum</div>
如果其中一个不起作用,那么您应该检查 Color
的实际值
我想更改中继器中包含的 div 的背景颜色。在下面的代码中是这样的:<div id="<%# Eval("id") %>">
我的问题是我正在使用 divs id 来获取记录的引用(div 是此类记录的图形表示),所以我无法更改它,因为它是不是固定的控件 ID,我不能在后面的代码中将它与 findcontrol 一起使用来查找 div。我怎样才能做到这一点?
起初我想在div的style属性中添加Eval,比如:style='background-color:<%# Eval("Color")%>;'
,here有人建议可以,但对我不起作用.
颜色以包含十六进制值的 varchar 形式保存在数据库中。
<asp:Repeater runat="server" ID="rptDaFare" DataSourceID="SqlAttivitaDaFare">
<ItemTemplate>
<div id="<%# Eval("id") %>">
<div class="div-titolo" title="<%# Eval("Titolo") %>"><%# Eval("Titolo") %></div>
<div class="div-testo" title="<%# Eval("Note") %>"><%# Eval("Note") %></div>
<div>
<table style="width: 100%; margin-top: 0.5em; padding-right: 0.2em;">
<tr>
<td style="width: 50%; text-align: left;">
<asp:ImageButton runat="server" ImageUrl="~/images/gabri.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 8, True, False) %>' />
<asp:ImageButton runat="server" ImageUrl="~/images/giuse.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 2, True, False) %>' />
<asp:ImageButton runat="server" ImageUrl="~/images/robi.png" Width="2.3em" Height="2.3em" ToolTip='<%#Eval("tecnico")%>' Enabled="false" Visible='<%# IIf(Eval("idutente") = 5, True, False) %>' />
</td>
<td style="width: 50%; text-align: right;">
<asp:LinkButton CommandName="delAttivita" CommandArgument='<%#Eval("ID")%>' runat="server" ID="lnkDelAtt" CausesValidation="False" OnClientClick="return confirm('Sei sicuro di voler eliminare questa attivita?');"><i class="fa fa-trash fa-lg" title="Elimina attività"></i></asp:LinkButton>
<asp:LinkButton CommandName="editAttivita" CommandArgument='<%#Eval("ID")%>' runat="server" ID="lnkEditAtt"><i class="fa fa-pencil-square fa-lg" title="Modifica attività"></i></asp:LinkButton>
</td>
</tr>
</table>
</div>
</div>
</ItemTemplate>
</asp:Repeater>
如果 Color
的值是颜色的正确十六进制或字符串表示,那么它应该可以工作。但是你没有正确关闭 style
属性。
如果颜色是字符串表示(红、绿、蓝)
<div style="background-color: <%# Eval("Color") %>;">Lorem Ipsum</div>
如果颜色是 HEX 没有 #
<div style="background-color: #<%# Eval("Color") %>;">Lorem Ipsum</div>
或与 #
<div style="background-color: <%# Eval("Color") %>;">Lorem Ipsum</div>
如果其中一个不起作用,那么您应该检查 Color