正确转义ng-init

时间:2015-01-22 22:19:24

标签: java javascript angularjs jsp escaping

我有一个java web应用程序,在页面上导入了angular.js应用程序。调用页面时,我在java类中收集了一堆变量,并构建了一个包含它们的JSONObject实例。

JSONObject initData = new JSONObject();
initData.put("key1", "abc");
initData.put("test special chars", "$%{}<>'\"?");
request.setAttribute("initData", initData.toString());

我希望在java类中收集的变量可用于angular app,这就是我使用json对象的原因。在jsp中我有以下内容:

<div ng-app="myAngularApp" ng-init="initData=${initData}">
    <div class="ng-view"></div>
</div>

<script src="angular/scripts/frameworks.js"></script>
<script src="angular/scripts/plugins.js"></script>
<script src="angular/scripts/myApp.js"></script>

<script type="text/javascript">angular.modulate.instantiateModules();</script>

${initData}从java类打印出我的JSONObject的字符串值。但是,我似乎无法正确地逃避它。我尝试过一堆StringEscapeUtils方法,但没有运气。

将此信息输入ng-init的正确方法是什么?

0 个答案:

没有答案