2016-02-28 45 views
0

我正在嘗試在table row中顯示data。但是它只是顯示var name作爲輸出,e.g:Spring MVC:在表格行中顯示數據?

Name | age 
User1| {age} 

我使用Spring-MVCSpring Boot一起。我創建了其他映射類,並且他們的數據在HTML <p> tags中正確顯示。

我的控制器:

@Controller 
public class MyController { 

    @RequestMapping("/age") 
    public String age(@RequestParam(value="age", required=false, defaultValue="5") String age, Model model) { 
     model.addAttribute("age", age); 
     return "age"; 
    } 
} 

age.html:(採用ThymeLeaf)

<!DOCTYPE HTML> 
<html xmlns:th="http://www.thymeleaf.org"> 
<head> 
    <title>Age Table</title> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
</head> 
<body> 
<table border="1"> 
    <tr> 
     <td>Name</td> 
     <td>Age</td> 
    </tr> 
    <tr> 
     <td>User1</td> 
     <td>${age}</td> 
    </tr> 
</table> 
</body> 
</html> 
+1

什麼是HTTP請求什麼樣的?你能提供的網址?如果post方法顯示錶格 –

+0

我從未使用過tymeleaf,但如果它像jsp一樣工作,我建議您檢查包含。你的代碼是可以的,事實上你的視圖是一個HTML而不是一個jsp或一個服務器端處理的頁面,可能會導致使用$ {}的問題。 – MaVVamaldo

回答

1

試試這個:

<table> 
     <tr> 
      <th>Name</th> 
      <th>Age</th> 
     </tr> 
     <tr> 
      <td>User 1</td> 
      <td th:text="${age}"> Age </td> 
     </tr> 
    </table> 

如果你有以下的列表像這樣:

List<Integer> listOfAge = new ArrayList<>(Arrays.asList(23,45,45,23,54,23,43)); 
    model.addAttribute("listOfAge", listOfAge); 

那就試試這個:

<table> 
     <tr> 
      <th>Sr. No</th> 
      <th>Name</th> 
      <th>Age</th> 
     </tr> 
     <tr th:each="age,iterationstatus :${listOfAge}"> 
      <td th:text="${iterationstatus.count}">1</td> 
      <td>User 1</td> 
      <td th:text="${age}"> Age </td> 
     </tr> 
    </table>