Thymeleaf模板如何獲取springMVC返回的model值
后台的實現:
@RequestMapping("/hello") public String hello(ModelMap model){ User user=new User(); user.setId(1); user.setName("zhangsan"); model.addAttribute("user",user ); return "index"; }
前端值的獲取(方式一):將model中的值賦給hidden,然后Js獲取隱藏域的值。
//將值賦給hidden域 <input type="hidden" th:value="${user.name}" id="user_name"/> //Js 獲取hidden的隱藏域 var user_name=$("#user_name").val();
alert(user_name
在javascript中訪問model(方式二):直接在js中取值,需要在script上添加th:inline=”javascript”的屬性
<script th:inline="javascript"> var single = [[${user}]]; console.log(user.name+"/"+user.id) </script>
這種方式不能寫在外聯式的Javascript文件里,這樣會不起作用,必須寫在被渲染的html文件中。如若獲取到數據后還想對其進行操作,可以將后續的操作寫在外聯式Javascript文件中,獲取數據就寫在html的script標簽中。
如:html
<script th:inline="javascript"> var msg = [[${message}]]; </script>
<!--寫它在后面--> <script src=”message.js”></script>
message.js
alert(msg);
這種方式不僅可以獲取字符串,還可以獲取到傳過來的JSON對象。
<script th:inline="javascript"> var paths = [[${storeDTO.getPaths()}]]; </script>
接下來就可以在外聯式的Javascript文件對該JSON進行操作了。