嗨,我是初级程序员。最后,我找到了一种将时间叶变量传递给Javascript函数参数的方法。但是当有几个String变量时,我不知道该怎么做。如何在Javascript函数中传递多个String变量? 我在下面附上源代码:)
function loadDetailView(no,type){
...
}
<tbody id="docsTr">
<tr th:if="${size} == '0'">
<td colspan=7>No data!</td>
</tr>
<tr th:unless="${size} == '0'" th:each="docs : ${list}"
**th:onclick="|loadDetailView(${docs.no},${docs.type})|"** (500 error!)
*** docs.type为字符串,而docs.no为整数
<td th:text="${docs.board_no}">1</td>
<td th:text="${docs.name}">Brian Willson</td>
<td th:text="${docs.emp_rank}">Manager</td>
<td th:text="${docs.reg_date}">2019-07-16</td>
</tr>
</tbody>
错误:仅变量表达式返回数字或布尔值...
答案 0 :(得分:1)
您不能再将String变量直接放在th:onclick
属性中。而是将它们放在data-*
属性中,并在onclick
函数中引用它们。在您的情况下,它看起来像这样(注意,它不再th:onclick
,现在只是onclick
):
<tr th:unless="${size} == '0'"
th:each="docs : ${list}"
th:data-docsNo="${docs.no}"
th:data-docsType="${docs.type}"
onclick="loadDetailView(this.getAttribute('data-docsNo'),this.getAttribute('docsType'))"