我有一个控制器,可以将 JSON 字符串添加到 Spring MVC 3.2 中的模型中:
@RequestMapping(value = "/")
public String myController(Model model) {
model.addAttribute("jsonData", "{\"foo\":\"bar\"}");
return "views/myView";
}
并且视图在 javascript 函数中使用 JSON:
<script type="text/javascript">
function doSomething () {
var myObject = <c:out value="${jsonData}" />;
}
</script>
理想情况下看起来像这样:
<script type="text/javascript">
function doSomething () {
var myObject = {"foo":"bar"};
}
</script>
但是输出是 HTML 编码的,所以在浏览器中看起来像这样:
<script type="text/javascript">
function doSomething () {
var myObject = {"foo":"bar"};
}
</script>
如何防止字符串被 HTML 编码?