2014-03-27 5 views
0
<body> 
    <% 
     int apps = 11; 
     out.println("<div>"); 
     out.println("<table>"); 
     StringBuilder Row1 = new StringBuilder(); 
     Row1.append("<tr>"); 
     StringBuilder Row2 = new StringBuilder(); 
     Row2.append("<tr>"); 
     StringBuilder Row3 = new StringBuilder(); 
     Row3.append("<tr>"); 
     for (int i = 0; i < apps; i++) { 
      if (i % 2 == 0) { 
       Row1.append("<td>" + i + "</td>"); 
      } 
      if (i % 2 == 1) { 
       Row2.append("<td>" + i + "</td>"); 
      } 
     } 
     Row1.append("</tr>"); 
     Row2.append("</tr>"); 
     out.println(Row1.toString()); 
     out.println(Row2.toString()); 
     out.println("</table>"); 
     out.println("</div>"); 
    %> 
</body> 

это моя страница JSP,Как напечатать номера в 3 строках в соответствии с порядком?

В настоящее время я получаю выход как

0 1 2 3 4 5 6 7 8 9 10 

Теперь мне нужно выход в

В строке 1:

0 3 6 9 12 15 

В строка 2:

1 4 7 10 13 

В строка 3:

2 5 8 11 14 

Если у меня есть 100 чисел, выход необходим, как указано выше.

+0

Добавить java-тэг, больше шансов получить get ur answer –

+0

Что создает сгенерированный HTML-код при доступе к странице? –

+0

также wat случается в 4-ом ряду. Вам нужно 3 6 9 12 ... –

ответ

0

Я разработчик PHP, я сделал это по-русски. Но логика такая же ..

<?php 

$apps = 100; 
for ($i = 0; $i < $apps; $i++) { 
    if ($i % 3 == 0) { 
     $row1 .= "<td>" .$i ."</td>"; 
    } 
    if ($i % 3 == 1) { 
     $row2 .= "<td>" .$i ."</td>"; 
    } 
    if ($i % 3 == 2) { 
     $row3 .= "<td>" .$i ."</td>"; 
    } 
} 
?> 
<table> 
<tr><?php echo $row1; ?></tr> 
<tr><?php echo $row2;?></tr> 
<tr><?php echo $row3; ?></tr> 
</table> 

Изменить соответствующие места и проверить ..

+0

Отсутствие 3-го ряда элементов (2,5,8, .. ect), пожалуйста, проверьте свой результат один раз. – tajMahal

+0

Спасибо, его рабочий штраф – tajMahal

+0

Рад, что у вас это работает .. :) –

0
for (int i = 0; i < apps; i++) { 
    if (i % 3 == 0) { 
     Row1.append("<td>" + i + "</td>"); 
    } else if (i % 3 == 1) { 
     Row2.append("<td>" + i + "</td>"); 
    } else if (i % 3 == 2) { 
     Row3.append("<td>" + i + "</td>"); 
    } 
} 

Сложение:

вы не распечатывается третий ряд .. попытаться добавить это:

Row3.append("</tr>"); 
out.println(Row3.toString()); 
+0

Пропущенные элементы третьего ряда (2,5,8, .. ect), пожалуйста, проверьте свой результат один раз. – tajMahal

+0

это потому, что вы не распечатали его .. пожалуйста, проверьте свой код .. –

+0

Thankyou его рабочий тон – tajMahal

0

Я бы посоветовал вам остановиться используя java-код на ваших страницах jsp, так как это может стать довольно хрупким. Альтернативой может быть использование JSTL. Ваша страница будет затем переведена на что-то вроде этого:

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> 
<!DOCTYPE html> 
<html> 
<body> 
<table> 
    <c:set var="apps" value="10"/> 
    <tr> 
    <c:forEach var="i" begin="0" end="${apps}" step="3"> 
     <td><c:out value="${i}"/></td> 
    </c:forEach> 
    </tr> 
    <tr> 
    <c:forEach var="i" begin="1" end="${apps}" step="3"> 
     <td><c:out value="${i}"/></td> 
    </c:forEach> 
    </tr> 
    <tr> 
    <c:forEach var="i" begin="2" end="${apps}" step="3"> 
     <td><c:out value="${i}"/></td> 
    </c:forEach> 
    </tr> 
</body> 
</html> 

Таким образом, легче держать четкое разделение между вашей Промишленой-логикой и вашим взглядом-логикой (который генерирует страницу).

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