如果是HTML语句

时间:2013-08-06 10:36:33

标签: html asp.net

你好,我的产品清单是我的html

 <telerik:RadListBox ID="RadListBox1" runat="server" DataSourceID="LinqDataSourceCategories"       Height="200px" Width="250px" CssClass="ui-droppable" >
                <EmptyMessageTemplate>
                No records to display.
                </EmptyMessageTemplate>
                <ItemTemplate >

                <div  class="ui-draggable ui-state-default" data-shortid="<%#Eval("ID")%>">
                <em>Active : </em><span><%# Eval("LoadProduct") %></span><br />
                <em>ProductId: </em><span><%# Eval("ProductId") %></span><br />
                 </div>
                </ItemTemplate>

         </telerik:RadListBox>

我有Active就是说LoadProduct是true还是false 在客户端看起来像这样

<em>Acrive : </em>
<span>False</span>
<br>
<em>ProductId: </em>
<span>101-01-056-02</span>
<br>
<em>ShortID: </em>
<span class="ShortID" data-shortid="0">0</span>
<br>

我想用img替换文本,我需要检查&lt;%#Eval(“LoadProduct”)%&gt; == true put img scr = / green.png / else img scr = / red.png / clien会是这样的

    <em>Acrive : </em>
        <span><img src='green.jpg'/></span>

 <br>
        <em>ProductId: </em>
        <span>101-01-056-02</span>
        <br>
        <em>ShortID: </em>
        <span class="ShortID" data-shortid="0">0</span>
        <br>

播种怎么做? 要将if语句添加到HTML,

或者捕获构建所有元素的事件,并检查LoadProduct == true并将html附加到项目?

4 个答案:

答案 0 :(得分:2)

试试这个

<em>Active : </em><span><%# Convert.ToBoolean(Eval("LoadProduct")) ? "<img src='green.jpg'/>" : "<img src='red.jpg'/>"%></span><br />

答案 1 :(得分:2)

想一想,我真的不喜欢前端后端条件的想法。 代码隐藏是一回事,前端是另一回事 - 如果它不是不可避免的话,将它混合起来并不是一个好主意。 最纯粹的方法是在代码隐藏中设置变量(或者在你的情况下是一个函数),只是为了在前端显示它,如:

Code behind:

protected string GreenOrRed(bool isLoadProduct)
{
    return isLoadProduct ? "green" : "red";
}

(函数或变量必须至少受到保护才能在aspx页面中访问,因为aspx页面是aspx.cs基类的衍生物)

front-end:

<span><img src='<%# GreenOrRed((bool)Eval("LoadProduct")) %>.jpg'/></span>

之后,记得添加

this.DataBind();

Page_Load()函数中。

让代码隐藏决定,让前端只显示结果。

答案 2 :(得分:1)

<% 
    if((bool)Eval("LoadProduct") == true)
    {
        Response.Write("src='green.jpg'");
    }
    else Response.Write("src='red.jpg'");
%>

答案 3 :(得分:1)

试试这个

 <img src='<%# (bool)Eval("LoadProduct") ? "green.jpg" : "red.jpg" %>'/>