Reputation: 2551
i am trying to do this :
<%# 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>
<%# : "" %>
inside a repeater ItemTemplate but it's giving me a syntax error an invalid expression :
and syntax error : expected
near ?
Upvotes: 0
Views: 101
Reputation: 2551
thank you for you comment everyone but i find my solution and i fix it like this :
<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>
Upvotes: 0
Reputation: 821
From what I see and understand, try this, this is what you supposed to do:
<% 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><% } %>
Using short circuit is the problem
Upvotes: 1
Reputation: 5121
This is not valid syntax, you are trying to use expression ? true : false syntax and are not.
<%# DataBinder.Eval(Container.DataItem, "SERIAL").ToString()!=""? %>
To fix it do a codebehind method and call it with the value returned from eval, like so.
<%# DoStuffWithSerial(DataBinder.Eval(Container.DataItem, "SERIAL"))) %>
Upvotes: 0