2014-11-17 3 views
-1

부트 스트랩을 사용하여 다른 색상으로 상태를 인쇄하려고하지만 아무 것도 인쇄하지 않습니다. 제 실수를 알아내는 데 도움을주세요.JSP에서 Java 및 HTML 혼동

<% if (a.getStatus() == "OnTime") 
{%> 
<td class="btn-success"><%= a.getStatus()%></td> 
<% } else if (a.getStatus() == "Delayed") 
{%> <td class="btn-warning"><%= a.getStatus()%></td> 
<% } else if (a.getStatus() == "Canceled") 
{%> <td class="btn-danger"><%= a.getStatus()%></td> F 
<% } else 
{ %> <td> </td> <% } %> 
+1

누군가가 문자열을'=='와 비교하려고 할 때 자바 컴파일러가 경고를 던질지도 모른다. 초보자는 항상 여기에서 넘어집니다. – gerrytan

+1

두 가지 주요 문제점 : 1)'=='보다는'equals'를 사용하여'String'을 비교하십시오. 2) [** Scriptlet을 사용하지 마십시오. 실망 스럽습니다 **] (http://stackoverflow.com/questions/3177733/how-to-avoid-java-code-in-jsp-files). 대신 표현 언어와 JSTL 같은 라이브러리를 사용하면 '=='를 사용하여 문제없이 효과적으로 문자열을 비교할 수 있습니다. –

답변

0

어쩌면 상태가 초기화되지 않았을 수 있습니다.

당신은

<% if (a.getStatus().equals("OnTime")) 

또는

<% if (a.getStatus().equalsIgnoreCase("OnTime")) 

와 문자열 내용을 비교하고 단지 마지막 줄에서 디버깅을 위해 실제 상태 방법 결과 드 볼

{ %> <td> <%= a.getStatus()%> </td> <% } %> 

을 넣어해야합니다.

+0

완벽한, 당신은 최고 !! –