我有一个绑定到我班级的表格,并且一切正常。
<form th:action="@{/createPost}" th:object="${newPost}" method="post" class="form-signin">
<input type="text" th:field="*{topic}" class="new-post-topic-input" placeholder="post topic"
autofocus="true"/>
</form>
我想将输入CSS更改为其他样式,但是type ='text'覆盖了所有内容。但是,如果我将输入类型更改为其他任何类型,它都不会绑定值。 我可以让百里香叶看到其他输入类型来绑定它们吗?
更新
我有一个引导css文件,其中包含
的css样式但是我希望对此输入有自己的样式,而不必从页面中删除bootstrap css。但是,如果我在此输入中添加class ='anyClass',则来自type ='text'的bootstrap中的css会覆盖所有内容。而且,如果我将文字类型从文本更改为其他内容,则百里香不再映射值。
upd2 我的问题与CSS覆盖无关。
我的问题是关于百里香叶数据对象的绑定。我有th:object =“ $ {newPost}” 在表单标签中。 Thymeleaf看到了它,当我提交表单时,它将每个对象绑定到该对象的字段。
但是,如果我从type ='text'更改为type ='ANYTHING ELSE',则thymeleaf不会映射任何内容。我如何使百里香叶将其他标签(如etc)绑定到我的对象上?
答案 0 :(得分:0)
The documentation明确指出可以绑定到其他类型:
请注意,
th:field
还了解HTML5引入的<input>
,<input type="datetime" ... />
等新类型的<input type="color" ... />
元素,从而有效地为Spring MVC添加了完整的HTML5支持。
该文档还提供了一个示例:
<div>
<label th:for="${#ids.next('covered')}" th:text="#{seedstarter.covered}">Covered</label>
<input type="checkbox" th:field="*{covered}" />
</div>
当然,字段covered
必须是boolean
类型。请确保您的input
元素的类型与您的字段的类型相匹配。