繁体   English   中英

如何在ASP.NET页面中使用服务器标签进行三元操作?

[英]How to make ternary operation with server tag in asp.net page?

我有一个包含html链接栏的中继器。 如果Eval(“ Name”)== null或Eval(“ Name”)代替,我希望属性名称和文本均为“ ...”。 所以我尝试这样做:

<a runat="server" class="a_equipement" onserverclick="displayEquipment" name='<%= Eval("Nom")%> == null ? "..." : <%# Eval("Nom")%>'> <%= Eval("Nom");%> == null ? "..." : <%# Eval("Nom");%> </a>

但是它没有用,并且出现了一个奇怪的错误:“ DC6_Configuration_Equipement.aspx(42,214):错误CS1026:)”

是否有可能这样做或还有其他可能性?


经过一些研究,我尝试这样做:

name='<%# Eval("Nom") == null ? "..." : Eval("Nom")%>'

但是,同样的问题再次出现...我正在使用IE8,这可能是兼容性问题吗?

再次感谢您的答复:)

像这样使用它。 如果Nom""它也将起作用:

<a runat="server" name='<%# string.IsNullOrEmpty(Eval("Nom").ToString()) ? "..." : Eval("Nom") %>'><%# string.IsNullOrEmpty(Eval("Nom").ToString()) ? "..." : Eval("Nom") %></a>

与IE 8的兼容性与三元运算符本身无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM