我有一个基于从数据库中获取数据的表。现在我想根据天气改变行的颜色,数据库中该行的readstatus为“YES”或“NO”。 所以我的代码如下:
<% while(rs.next())
{
String messageid=rs.getString("MESSAGE_ID");
String sendername=rs.getString("EMAIL_FROM");
String messagesubject=rs.getString("EMAIL_SUBJECT");
Timestamp sendingtime=rs.getTimestamp("EMAIL_TIME");
String readstatus=rs.getString("READSTATUS");
if(readstatus.compareTo("NO")==0)%>
<tr bgcolor="66FF00"> </tr>
<%
if(readstatus.compareTo("YES")==0)
%>
<tr bgcolor="660000"> </tr>
<tr onmouseover="ChangeColor(this, true);" onmouseout="ChangeColor(this, false);" onclick="DoNav('showmail.jsp?mid=<%=messageid%>');">
<td callspan="3"><%=sendername%> : <%=messagesubject%> <%=sendingtime%></td>
</tr>
<tr/>
<%
} %>
</tr>
但是所有行的颜色仍然显示相同。这段代码中的错误是什么?
其次,我希望发送时间显示在最右侧,而sendername显示在左侧,而messagesubject显示在我行中间的行中。如何做?
答案 0 :(得分:0)
此代码存在一些风格问题,但我会通过这些问题。要使其正常运行,只需要确认HTML十六进制颜色需要#:#66FF00
而不是66FF00
。
在发送时间问题上,只需将其中一个td与colspan =&#39; 3&#39;进行对比。 (你也拼错了colspan。它的列如列,而不是调用。)