从 JavaScript 检索 thymeleaf 对象值

Retrieve thymeleaf object value from JavaScript

我有一个简单的 thymeleaf 模板从控制器获取对象,在该模板中我有 select 以及来自控制器的选项作为 array/list,想要访问 selected 选项的值.但是我从 JavaScript

获取内存引用作为字符串

控制器:

modelAndView.addObject("banks",screenDetail.getBanks().toArray());

HTML:

<select id="chooseBank" name="bankId" style="width:100%" class="de-intl-select" onchange="handleBank()">
    <option value=""></option>
    <option th:each="bank:${banks}" th:text="${bank.name}"
            th:value="${bank}">
    </option>
</select>

Javascript:

function handleBank()
{
    var chooseBankField = document.getElementById('chooseBank');
    var bank = chooseBankField.options[chooseBankField.selectedIndex].value;
    console.log("PRINT: "+ bank);
    console.log("PRINT: "+ bank.id);
}

首先将对象引用打印为 sting,即 com.test.Bank@L1232142 第二行打印 undefined.

注意:Bank 是 pojo,包含 id、name、logo 等字段

我要去哪里绞尽脑汁?

th:value 中使用 ${bank.value} 或在银行 class 中覆盖 toString()。你得到的是toString()方法默认实现的结果。