从 thymeleaf 标签向 javascript 函数传递多个参数

Passing multiple parameters to a javascript function from thymeleaf tag

我对 thymeleaf 很陌生。在这里,我坚持传递参数。这是我的 html 页面。

<tr th:each="result : ${searchResult}">
<td>
    <a href="#" th:text="${result.getString('type')} +'|'+  ${result.getString('name')} +'|'+  ${result.getString('revision')}"></a>
</td>
<td>
    <a href="#" role="button" class="green" data-toggle="" onclick="dataSearchAjax1('Source','sourceResultDiv')">view</a>
</td>
</tr>

这是我的 javascript 函数

function dataSearchAjax1(searchType, resultDiv) {
        var typeVar=searchType;
        $.ajax({
            url : 'dataSearchAjax1',
            data: {type:typeVar},
            success : function(data) {
                $('#'+resultDiv).html(data);
            }
        });
    }

这里我必须传递 result.getString('type') 和 result.getString('name') 而不是 'source' 和 'sourceResultdiv'.

我试过了

 th:onclick="'javascript:dataSearchAjax1(\'' + ${result.getString('type')},${result.getString('name')} + '\');'"

我也尝试过 th:attr="online...tag..两者都不起作用。有人可以帮我吗?

您还需要转义 , 分隔符,因此执行函数调用的代码为:

th:onclick="'javascript:dataSearchAjax1(\'' + ${result.getString('type')} +'\',\''+ ${result.getString('name')} + '\');'"

这对我有用,使用起来简单明了[[ ]]

传递多个参数:

<button type="button" id="editUserButton" class="btn btn-primary" th:onclick="editUser([[${user.getId}]],[[${user.getLastName}]])">Edit</button>


th:onclick="dataSearchAjax1([[${result.getString('type')}]] ,[[ ${result.getString('name')}]])"