想象一下,我在转发器的ItemTemplate
中有一个名为“readMore”的链接按钮,当每个帖子的内容小于2000时,我想为它设置display: none;
字符。
<asp:repeater id="postsRepeater" runat="server"
onitemdatabound="postsRepeater_ItemDataBound">
<ItemTemplate>
<a class="button" href="#" runat='server' id='more'>Read More</a>
</ItemTemplate>
</asp:repeater>
在PHP中,您可以简单地编写如下内容:
<?php echo (contentLength < 2000 ? 'display: none;' : ''); ?>
然而,我测试了这段代码并且它已经翻了个错误:
<%= Eval("Content").Length < 2000 ? "display: none;" : string.Empty %>
是否可以在Repeater控件中编写三元内联ASP.NET?怎么样?
答案 0 :(得分:5)
这不是三元运算符的问题;这是数据绑定控件的问题,因为您必须使用#
而不是=
。
使用此
<%# Eval("Content").ToString().Length < 2000 ? "display: none;" : string.Empty %>
而不是
<%= Eval("Content").ToString().Length < 2000 ? "display: none;" : string.Empty %>