我是JSP新手所以有了这个问题,我真的只是想知道我是否对JSP的工作方式有了正确的认识。但无论如何,我正在开发这个网络应用程序,我需要用一些值和颜色填充一些表格,其中一些是绿色的,一些是红色的,一些是灰色的。它们具有的颜色取决于支持每行的所有值的Java对象。所以这就是我的想法:
<td class="<%detail.getClassStyle()%>"><%= detail.getStatus() %></td>
我希望在返回方法之后会发现这样:
<td class="red">Down</td>
但它不起作用。在网页的源代码类中只是说class =“”。那么我是否错过了JSP的工作原理?无论我是否,有人可以提出如何获得我的预期结果的想法吗?
编辑: 还有一个额外的类属性getClassStyle()返回,表示单元格所在的列。类似于: td class =“detail red”&gt; Down 所以简单地将它涂成红色并不是我想做的事情。
答案 0 :(得分:1)
你错过了帖子中的=
,但我不确定这只是在这里或在你的实际JSP中的错字。
其次,像Pointy在评论中提到的那样,Scriptlet语法是邪恶的。使用方法:
<td class="${detail.classStyle}">${detail.status}</td>
现在我不确定你的对象是如何在java端设置的,但想象一下你需要确保设置的一些布线,以便尝试访问detail.whatever
调用正确的getter(detail.getWhatever()
)。