根据状态变量更改行的颜色

时间:2014-04-03 18:48:21

标签: java html jsp java-ee

我有一个基于从数据库中获取数据的表。现在我想根据天气改变行的颜色,数据库中该行的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显示在我行中间的行中。如何做?

1 个答案:

答案 0 :(得分:0)

此代码存在一些风格问题,但我会通过这些问题。要使其正常运行,只需要确认HTML十六进制颜色需要#:#66FF00而不是66FF00

在发送时间问题上,只需将其中一个td与colspan =&#39; 3&#39;进行对比。 (你也拼错了colspan。它的列如列,而不是调用。)