使用Spring MVC和Thymeleaf,我構建了一個帶有JavaScript內部的html視圖。Thymeleaf,Javascript內聯和迭代
在頁面中,th:每個值都與迭代值一起使用,爲一組按鈕提供唯一的HTML id。
<td th:each="optionValue,iterStat : ${someObject.optionValues}">
<button class="btn btn-default" th:id="${'optionBtn_' + (iterStat.count - 1)}" th:text="${optionValue.toString()}" />
</td>
我試圖生成的JavaScript將使用jQuery引用每個按鈕ID的問題。
在「另一個」視圖分辨率的語言,我會用代碼:
<% for(var i = 0; i < someObject.optionValues.length; i++) { %>
$('#optionBtn_<%- i %>').on("click", function() {
doSomething('<%= someObject.optionValues[i] %>');
});
<% } %>
(上面可能不是100%語法正確,但我希望你的想法 - 我想要給這樣做可以使用上面的樣式)
但在Thymeleaf,雖然我知道我可以使用
th:inline="javascript"
引用單個模型的項目,我不看我怎麼可以使用一看就根在腳本塊中提供多個jQuery函數調用定義。
任何想法? (我可能正在接近完全錯誤的問題,所以我也接受這方面的新想法)