2015-02-26 5 views
-2

У меня есть файл jsp, который печатает таблицу mysql с помощью jdbc.На столбцах таблицы относятся id, name, division и age.I хочу изменить цвет ячейки таблицы с возрастом данные для изменения красного и зеленого в зависимости от некоторых конкретных значений.изменить цвет ячейки таблицы с помощью jsp

<body> 
<%!Connection con; %> 
<%!Statement s; %> 
<% ResultSet rs=null; 
String name=request.getParameter("t1"); 
try{ 
Class.forName("com.mysql.jdbc.Driver"); 
con=DriverManager.getConnection("jdbc:mysql://localhost:3307/****","root","****"); 
s=con.createStatement(); 
System.out.println(name); 
rs=s.executeQuery("select * from employee"); 
}catch(Exception e){ e.printStackTrace(); } 
%> 
<div id="dt_table"> 
<table border=1> 
<tr> 
<th>Empolyee ID</th> 
<th>Empolyee Name</th> 
<th>Employee Division</th> 
<th>age</th> 
</tr> 
<tr> 
<% try 
{ 
while(rs.next()) 
{ %> 
<tr> 
<td><%=rs.getInt(1)%></td> 
<td><%=rs.getString(2)%></td> 
<td><%=rs.getString(3)%></td> 
<td><%=rs.getInt(4)%></td> 
</tr> 
<% } 
}catch(Exception e){ e.printStackTrace(); }%> 

</table></div> 
</body> 

Этот вопрос уже задан, но на него не было ответило. Вот ссылка. https://stackoverflow.com/questions/23131874/change-color-of-table-based-on-values-of-mysql-database-using-jsp

Я даже нашел что-то вроде этого в PHP, но я знаю выигрыш PHP, Change color of table based on values from SQL Query database using PHP

Таким образом, любая помощь в JSP или JavaScript может быть helpful.Thanks.

+0

это не работает, и как это проверить, что значение столбца он имеет в виду. –

ответ

0

Попробуйте это, предположим, что в четвертом столбце возраст в таблице:

while(rs.next()) { 
{ %> 
<tr> 
<td><%=rs.getInt(1)%></td> 
<td><%=rs.getInt(2)%></td> 
<td><%=rs.getInt(3)%></td> 
<td <%=(rs.getInt(1) > 10 : "style='background-color:red;'" : "")%> ><%=rs.getInt(1)%></td> 
</tr> 
<% } %> 

Или вы просто использовать If-то еще, если вы хотите. Надеюсь, это помогает!

+0

Использовать стиль = 'bg-color: red;' вместо style = 'background-color: red;' –

+0

фоном-цвет работает отлично, спасибо alot. –

1

Вы можете сделать это на основе заголовка таблицы

function colorIt() { 
    var val = 0; //value to be compared with 
    var val2 = 10; //value to be compared with 
    var ColIndexToCheck = 0; 
    var header = document.getElementById("dt_table").getElementsByTagName("th"); 
    for (var j = 0; j < header.length; j++) { 
    if (header[j].innerHTML == "Age") { 
     ColIndexToCheck = j; 
    } 
} 

var trs = document.getElementById("dt_table").getElementsByTagName("tr"); 
for (var i = 0; i < trs.length; i++) { 
    if (trs[i].cells[ColIndexToCheck].innerHTML > val) { 
     trs[i].cells[ColIndexToCheck].style.backgroundColor = "red"; 
    } 
    if (trs[i].cells[ColIndexToCheck].innerHTML > val2) { 
     trs[i].cells[ColIndexToCheck].style.backgroundColor = "green"; 
    } 
} 

}

Смежные вопросы