Thymeleaf с ajax, как передать параметры - PullRequest
0 голосов
/ 29 января 2019

В моем html-файле: organigramme.html У меня есть:

...
$(document).ready(
                function() {
                    $.ajax({
                        url : ${url},
                        dataType : "JSON",
                        success : function(result) {
                        alert(result);                              
                        },
                        error : function(xhr, ajaxOptions, thrownError) {
                            alert(xhr.status);
                            alert(thrownError);
                        }
                    });
...

В моем контроллере

@GetMapping("/organigramme")
    public String organigramme(@RequestParam(name="id") Long id, Model model) {
        model.addAttribute("url", "/getOrganigramme?id="+id);
        return "pages/organigramme";
    }

значение $ {url} не заменяется.

Есть ли способ получить значение URL из контроллера?

1 Ответ

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

Вы должны использовать встроенную методологию JavaScript для достижения этой цели.Пример кода выглядит следующим образом:

    <script th:inline="javascript">

          /*<![CDATA[*/
            ...
            $(document).ready(
                function() {
                    $.ajax({
                        url : /*[[${url}]]*/,
                        dataType : "JSON",
                        success : function(result) {
                        alert(result);                              
                        },
                        error : function(xhr, ajaxOptions, thrownError) {
                            alert(xhr.status);
                            alert(thrownError);
                        }
                    });
...

           /*]]>*/
    </script> 

Обратите внимание на свойство th:inline="javascript", а также маркировку /*<![CDATA[*/ и /*]]>*/.

...