Thymeleaf与ajax,如何传递参数

时间:2019-01-29 08:57:29

标签: ajax thymeleaf

在我的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 :(得分:0)

您应该使用内联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[*//*]]>*/标记。