我用的是c#+asp.net结合的方法。
在repeater控件里面绑定了一条数据,代码如下:
<%# DataBinder.Eval(Container.DataItem,"msg_reply") %>现在我想写一个判断语句,当绑定的数据字符串不为空时,就产生另一些html代码:<% if (xxxx){ %> //xxxx是我想要的条件语句
<div align="right">版主于<%# DataBinder.Eval(Container.DataItem,"msg_reply_time") %>
回复<br>
</div>
<% } %>
请问xxxx这里该怎么写呀?
在repeater控件里面绑定了一条数据,代码如下:
<%# DataBinder.Eval(Container.DataItem,"msg_reply") %>现在我想写一个判断语句,当绑定的数据字符串不为空时,就产生另一些html代码:<% if (xxxx){ %> //xxxx是我想要的条件语句
<div align="right">版主于<%# DataBinder.Eval(Container.DataItem,"msg_reply_time") %>
回复<br>
</div>
<% } %>
请问xxxx这里该怎么写呀?
if DataBinder.Eval(Container.DataItem,"msg_reply")!=null
{
%>
不过不建议这么做
建议在repeater的itembound事件内书写代码
由于当时用的是REPEATER控件,没有办法直接处理CELL的属性
所以我不得不把原来的直接输出
<%# DataBinder.Eval(Container.DataItem,"score") %>
修改为
<asp:Label ID="score" Runat="server"><%# DataBinder.Eval(Container.DataItem,"score1") %></asp:Label>
然后加上REPEATER控件ItemDataBound方法的代码
if (e.Item.ItemType==ListItemType.Item){
if(Convert.ToInt16(DataBinder.Eval(e.Item.DataItem, "score1"))<60)((Label)e.Item.FindControl("score1")).ForeColor=Color.Red;
}
<%# DataBinder.Eval(Container.DataItem,"msg_reply") %>改成
<%#func( DataBinder.Eval(Container.DataItem,"msg_reply").ToString()) %>
在后台编写func函数,想怎么处理就怎么处理,想返回什么就返回什么,注意该函数要public
前台:
<%#getstr( DataBinder.Eval(Container.DataItem,"msg_reply").ToString(),DataBinder.Eval(Container.DataItem,"msg_reply_time").ToString()) %>
后台:
public string getstr(string reply,string reply_time)
{
if(reply!="")
{
return "<div align=right>斑竹于"+reply_time+"回复</div>";
}
else
return "";
}
<div align="right">版主于<%# DataBinder.Eval(Container.DataItem,"msg_reply_time") %>
回复<br>
</div>
<% } %>我中间的那些html代码又怎么实现呢 ?
修改为
<asp:Label ID="score" Runat="server"><%# DataBinder.Eval(Container.DataItem,"score1") %></asp:Label>
然后加上REPEATER控件ItemDataBound方法的代码
if (e.Item.ItemType==ListItemType.Item){
if(Convert.ToInt16(DataBinder.Eval(e.Item.DataItem, "score1"))<60)((Label)e.Item.FindControl("score1")).ForeColor=Color.Red;
}
在后台编写func函数,想怎么处理就怎么处理,想返回什么就返回什么,注意该函数要public
<table width="95%" border="0" cellspacing="1" cellpadding="5"><tr>
<td style="word-break:break-all" bgcolor="#E0E6EF" class="top">
<asp:Literal id="Literal3" runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"msg_reply") %>'>
</asp:Literal>
<hr size="1" noshade align="center" width="98%">
<div align="right">版主于<%# DataBinder.Eval(Container.DataItem,"msg_reply_time") %>
回复<br>
</div>
</td>
</tr>
</table>
<% } %>