我需要使用另一个作为其中的一部分来构建一个字符串 id。
我知道我可以传递一个model.addAttribute("parentId", parentId);
页面并显示为
<div>
<span th:text="${parentId}"/><input id="id" type="text" th:field="${id}" />
</div>
但我希望将其全部作为占位符放在 <input />
元素中,并使$[parentId}
文本无法删除和编辑。
有没有办法只使用 Thymeleaf 而不是 JavaScript 来做到这一点?
更新
根据要求,这方面的示例如下所示:
parentId
可以是任何字符串,例如"abc"。
parentId
值将被传递到屏幕,输入将具有允许更改的固定值"abc:",并且可以在输入字段中插入任何值,因此生成的 id 将类似于 abc:xpto
.
在视图方面做到这一点。您可以做的是在控制器端管理parentId
和id
的值。
因此,在用span
维护视图以显示id
的parentId
和input
的同时,并假设您的input
在form
内,在控制器中,您可能会有如下所示的内容:
@RequestMapping(value = "/submitId", method = RequestMethod.POST)
public void manageId(String id) {
id = parentId + id;
//work with the complete id
}
其中parentId
与您之前发送到Model
的变量相同。
之后,您可以对新的id
值执行任何需要执行的操作,从将值保存到数据库到在另一个视图中显示它。