如何在百里香中设置变量?

时间:2019-07-13 13:11:11

标签: spring spring-boot thymeleaf

我仍在寻找一种将值直接设置为百里香的JavaScript函数param的方法。如何直接将${variable}设置为javascript函数参数?救救我。

function **loadDetailView**(no){
 location.href = "/home/docs/holiday/detail-view/"+no; 
}

<tbody id="docsTr">
<tr th:if="${size} == '0'">
  <td colspan=3>No data.</td>
</tr>
<tr th:unless="${size} == '0'" th:each = "docs : ${list}"
style="cursor:pointer;" onclick="**loadDetailView**(1)">
  <td th:text="${docs.board_no}">1</td>
  <td th:text="${docs.name}">Brian</td>
  <td th:text="${docs.holiday_type}">Annual</td>
</tr>
</tbody>

1 个答案:

答案 0 :(得分:1)

我认为您可能在这里混入一些概念。 javascript函数无法接收thymeleaf参数,因为thymeleaf的作用是在将页面发送给客户端之前先对其进行“编译”。一旦在客户端上(并且javascript可以执行),就不再有百里香叶了。

您可以做的是,使每个对loadDetailView的onclick调用在每个<tr>中具有不同的参数,方法如下:

<tr th:unless="${size} == '0'" th:each = "docs, iter : ${list}"
style="cursor:pointer;" onclick="loadDetailView([[${iter.index}]])">

根据行的不同,哪个将分别使用0、1、2等调用loadDetailView。