Не отображать HTML-элемент, если DataBinder.Eval(Container.DataItem, "someValue") == 0
У меня есть <asp:repeater>
внутри которого я рендеринг таблицы с несколькими строками. Каждая строка - соответствует разному значению.
Вопрос: как "пропустить" строку, если это значение пусто?
вот оценочное заявление:
<%# DataBinder.Eval(Container.DataItem, "Website") == ""? "" : /*render element*/ %>
и вот элемент, который я хочу визуализировать в случае утверждения, если ложь:
<tr>
<td><span>Website address:</span></td>
<td>
<p><a href="<%#DataBinder.Eval(Container.DataItem, "Website") %>" class="red-link"><%#DataBinder.Eval(Container.DataItem, "Website") %></a></p>
</td>
</tr>
1 ответ
Решение
Попробуй это:
<asp:Repeater runat="server" id="myRepeater">
<ItemTemplate>
<tr runat="server"
visible='<%#String.Format("{0}",DataBinder.Eval(Container.DataItem, "Website"))!="" %>'>
<td><span>Website address:</span></td>
<td>
<p><a href='<%#DataBinder.Eval(Container.DataItem, "Website") %>"
class="red-link'><%#DataBinder.Eval(Container.DataItem, "Website") %></a></p>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
Это установит ряд visible
приписывать false
когда Website
пусто или null
,