Thymeleaf模板如何获取springMVC返回的model值

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进行操作了。

 
posted @ 2018-12-07 03:24  神码是浮云  阅读(14098)  评论(1编辑  收藏  举报