用标签将JSON对象放入百里香

时间:2018-02-22 03:16:18

标签: javascript thymeleaf

th:attr="data-params='{url:\'api/module/appId?appId='+${appId}+'\',dataName:\'module\'}'">

data-params应该是一个Json对象,我可以使用JSON.parse()。而JSON.parse()需要这样的Json对象{url: "/api/role/app?appId=d73ed474fca942609133b915c5da6d2a", dataName: "role"}

th:attr获取"{url:'api/module/appId?appId=d73ed474fca942609133b915c5da6d2a',dataName:'module'}"

这是一个问题:我如何使用th:attr来获得正确的Json对象?

1 个答案:

答案 0 :(得分:1)

使用"转义双引号对我有用:

<span id="test" th:attr="data-params='{&quot;url&quot;:&quot;api/module/appId?appId='+${appId}+'&quot;,&quot;dataName&quot;:&quot;module&quot;}'" />

测试:

<script>
    var json = $('#test').attr("data-params");
    console.log(json);
    console.log(JSON.parse(json));
</script>

Chrome和Firefox都在开发者日志中正确输出:

{"url":"api/module/appId?appId=null","dataName":"module"}
Object { url: "api/module/appId?appId=null", dataName: "module" }