Как отобразить значения, поступающие от контроллера Springboot в JavaScript - PullRequest
0 голосов
/ 16 января 2019

У меня есть контроллер, который передает объект json, обернутый внутри модели.

@RequestMapping("/template")
public String showTemplate(Model model) {       
    JSONObject obj = new JSONObject();
    obj.put("equipmentID", "30584D277D6D4568B17EBB8917D0CB15");
    model.addAttribute("template",obj);
    return "templates";
}

Я хотел бы использовать эти значения в моем JavaScript. Я не могу этого сделать. Тем не менее, я вижу отображение этих значений в HTML.

<head>
<script>
    function test()
    {
    var temp = "${template}";
    alert(temp); // The values are not displayed here
    }
</script>

<body onload="test()">
    <span th:text="${template}"> </span> //I can display the values here        
<body>

Я также изучил этот вопрос Как получить значение ключа модели Spring MVC контроллера внутри javascript? и пробовал оба варианта с или без кавычек, но безуспешно.

Я также пытался определить в HTML:

        <input type="hidden" id="templates" value='${template}'/>       

и использование getElementById в моем JavaScript безуспешно:

        var template = document.getElementById("templates");

1 Ответ

0 голосов
/ 16 января 2019

Используя тимелист, вы можете использовать следующее:

<script th:inline="javascript">
var message = [[${template}]];
alert(template);
</script>

Существуют дополнительные способы доступа к серверным переменным в зависимости от вашего варианта использования, для получения дополнительной информации обратитесь к http://www.thymeleaf.org/doc/tutorials/3.0/usingthymeleaf.html#javascript-inlining.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...