1

如果数据库返回任何内容,我希望在屏幕上输出一个按钮。以下是我想要实现的目标:

<%# IfEmpty(Eval("Link1URL"), "", "<a href="<%#Eval("Link1URL")%>" class="btn"> <%#Eval("Link1Title")%> </a>")) %>

我在这里想说的是,如果该字段Link1Url,则不显示任何内容。否则,显示字段为 的<a>标签。Link1URLhref

这不能作为内部宏工作:<a href="<%#Eval("Link1URL")%>为外部宏搞砸了IfEmpty

我该如何解决这个问题?

4

2 回答 2

0

我在宏中使用了 .Netstring.IsNullOrEmpty来帮助我接下来的逻辑:

<%# !string.IsNullOrEmpty((string)Eval("Link2URL")) ? "<a href='" + Eval("Link2URL") + "'>" + Eval("Link2Title") + "</a>" : null %>

于 2013-06-07T10:01:47.123 回答
0

对于更高级的场景,您可以使用asp:Placeholder

这是一个例子:

<asp:Placeholder runat="server" visible='<%# !String.IsNullOrEmpty(Eval("Foo").ToString()) %>' >
   <div class="foo-structure">
      ...
   </div>
</asp:Placeholder>

此处讨论了转换中的条件布局更改。

剧透所有这些方法都是hacky。

于 2014-01-29T04:25:27.337 回答