gpt4 book ai didi

java - 从 thymeleaf 中获取一个变量 th :each

转载 作者:行者123 更新时间:2023-11-30 01:58:41 26 4
gpt4 key购买 nike

我可以在另一个代码块中使用来自th:each的变量charity吗?例如

 <select class="select-field">
<option th:each="charity : ${charities}" th:value="${charity.id}" th:text="${charity.name}"></option>
</select>

<div>
<p th:text="${'You selected '+ charity.name}">
<div>

最佳答案

不,Thymeleaf 是在服务器端呈现的,因此要实现此目的,您需要使用 jsjQuery。像下面的代码这样的东西应该可以解决问题。

jQuery

$(document).ready(function() {

// If you want the option's text.
$('.select-field').on('change', function() {
$('p').text("You selected " + $(this).find('option:selected').text()));
})

// If you want the option's value.
$('.select-field').on('change', function() {
$('p').text("You selected " + $(this).val()));
})
})

更新

如果您想将慈善对象的更多信息添加到您的选项中,您可以使用th:attr。因此,例如,如果您想要慈善机构的描述和图像名称,那么您可以执行如下操作。

HTML

<select class="select-field">
<option th:each="charity : ${charities}" th:value="${charity.id}" th:text="${charity.name}" th:attr="data-description=${charity.description}, data-image=${charity.image}"></option>
</select>

然后,您可以使用 jQuery .attr() 函数获取每个属性值。

$(document).ready(function() {
$('.select-field').on('change', function() {
var selectedOption = $(this).find('option:selected');
var name = $(selectedOption).text();
var id = $(selectedOption).val();
var description = $(selectedOption).attr('data-description');
var imageName = $(selectedOption).attr('data-image');
// Find your image by id.
var image = $('#myImage');

// Set your new image.
$(image).attr('src','/img/'+ imageName));
})
})

关于java - 从 thymeleaf 中获取一个变量 th :each,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53562828/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com