我正在尝试这样做:
<%# DataBinder.Eval(Container.DataItem, "SERIAL").ToString()!=""? %>
<a href="javascript:void(0)" id="Desc_lb" runat="server" visible="true">Desc</a>
<telerik:RadToolTip ID="Description" runat="server" TargetControlID="Desc_lb" Text='Reference Order serial : <%#Eval("SERIAL") %>'></telerik:RadToolTip>
<%# : "" %>
在转发器ItemTemplate中,但它给了我一个语法错误,一个无效的表达式:
和syntax error : expected
靠近?
答案 0 :(得分:1)
从我看到并理解,试试这个,这就是你应该做的:
<% if (DataBinder.Eval(Container.DataItem, "SERIAL").ToString() != "") { %>
<a href="javascript:void(0)" id="Desc_lb" runat="server" visible="true">Desc</a>
<telerik:RadToolTip ID="Description" runat="server" TargetControlID="Desc_lb" Text='Reference Order serial : <%#Eval("SERIAL") %>'>
</telerik:RadToolTip><% } %>
使用短路是问题
答案 1 :(得分:0)
这是无效的语法,你试图使用表达式? true:错误的语法而不是。
<%# DataBinder.Eval(Container.DataItem, "SERIAL").ToString()!=""? %>
要修复它,请执行codebehind方法并使用eval返回的值调用它,就像这样。
<%# DoStuffWithSerial(DataBinder.Eval(Container.DataItem, "SERIAL"))) %>
答案 2 :(得分:0)
感谢大家的评论,但我找到了我的解决方案,我就这样解决了:
<a href="javascript:void(0)" id="Desc_lb" runat="server" visible='<%# DataBinder.Eval(Container.DataItem, "SERIAL").ToString()=="" %>'>Desc</a>
<telerik:RadToolTip ID="Description" runat="server" TargetControlID="Desc_lb" Text='<%# "Reference Order serial :"+ DataBinder.Eval(Container.DataItem, "SERIAL") %>'></telerik:RadToolTip>