我有一个简单的 gridview ItemTemplate,如下所示:
<asp:TemplateField HeaderText="User">
<ItemTemplate>
<a href="mailto:<%# Eval("Email") %>"><%# Eval("Name") %></a>
</ItemTemplate>
</asp:TemplateField>
但是,并非此列表中的所有用户都在系统中存储了电子邮件,这意味着 Eval("Email") 有时会返回空白。发生这种情况时,我宁愿在字段中没有链接,因为如果没有电子邮件地址,mailto 将无法工作。
我怎样才能做到这一点?我希望可以在演示代码中使用 IF 语句,就像经典 ASP 的工作方式一样。如果没有,我想我可以在我的数据源上创建一个包含整个 HREF html 的属性...
代替Eval
您可以使用任何给定的公共函数。因此,您可以尝试执行以下操作:
<ItemTemplate>
<%# (String.IsNullOrEmpty(Eval("Email").ToString()) ? String.Empty : String.Format("<a href='mailto:{0}'>{1}</a>", Eval("Email"), Eval("Name")) %>
</ItemTemplate>
如果没有尝试过确切的语法,但我在我的一个页面中使用了类似的语法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)