Thymeleafとjsのインタラクション
5633 ワード
プロジェクトではthymeleafというテンプレートを使用していますが、パラメータの前後伝達が面倒であることを発見し、まとめました.
1.js java Controlにdataを渡す
http://dk05408.iteye.com/blog/2101469で見ることができます
2.dataからJava Controllerからjsにデータを渡す
個々のパラメータを渡す
java
testhome.js
転送Entity
java
3.パラメータとしてListを渡す
結果:
1.js java Controlにdataを渡す
http://dk05408.iteye.com/blog/2101469で見ることができます
2.dataからJava Controllerからjsにデータを渡す
個々のパラメータを渡す
java
@RequestMapping(value="/test",method = RequestMethod.POST)
public String submit(String name,Model model){
//String name = request.getParameter("name");
// mailClient.send("[email protected]", name);
model.addAttribute("username",name);
model.addAttribute("go","ggggggg");
return "account/testhome";
}
testhome.js
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"
xmlns:social="http://spring.io/springsocial"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorator="layout">
<head>
<title> </title>
</head>
<body>
<div id="content" layout:fragment="content" >
<h1>Result</h1>
<p>Today is: <span th:text="${username}">13 February 2011</span></p>
<p>The TestString Is: <span th:text="${go}">ready..</span></p>
<a href=""> </a>
</div>
</body>
</html>
転送Entity
java
@RequestMapping(value="/register", method=RequestMethod.POST)
public String registerFormSubmit(@ModelAttribute CredentialUser user,Model model){
//register.registerAccount(user.getUsername(),"", "");
//auth.register(user.getUsername(), user.getPassword());
model.addAttribute("user", user);
return "account/phonevalidation";
}
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org"
xmlns:social="http://spring.io/springsocial"
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorator="layout">
<head>
<title> </title>
</head>
<body>
<div id="content" layout:fragment="content" >
<h1>Result</h1>
<p th:text="' : ' + ${user.username}" />
<p th:text="' :' + ${user.password}" />
<a href=""> </a>
</div>
</body>
</html>
3.パラメータとしてListを渡す
@RequestMapping(value="/test",method = RequestMethod.POST)
public String submit(String name,Model model){
model.addAttribute("username",name);
model.addAttribute("go","ggggggg");
List<Account> accounts = new ArrayList<Account>();
for (int i = 0; i < 10; i++) {
Account account = new Account();
account.setId(Long.valueOf(i));
account.setUsername("username"+i);
account.setAddress(" "+i);
accounts.add(account);
}
model.addAttribute("accounts", accounts);
return "account/testhome";
}
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org" xmlns:social="http://spring.io/springsocial" xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorator="layout">
<head>
<title> </title>
</head>
<body>
<div id="content" layout:fragment="content">
<h1>Result</h1>
<p>
Today is:
<span th:text="${username}">13 February 2011</span>
</p>
<p>
The TestString Is:
<span th:text="${go}">ready..</span>
</p>
<a href=""> </a>
<p><table>
<tr th:each="account : ${accounts}">
<td th:text="${account.username}">...</td>
<td th:text="${account.address}">...</td>
</tr>
</table>
</p>
</div>
</body>
</html>
結果: