控制器未使用Spring Boot和Thymeleaf从HTML的跨度中接收值

达米安阿门

我的HTML中有以下内容正在使用 Thymeleaf

<form action="#" th:action="@{/shutDown}" th:object="${ddata}" method="post">
        <span>Domain</span>
        <span th:text="${domain}" th:field="*{domain}">domain</span>
        <input type="Submit" value="close" />
</form>

我有以下Controller正在使用的内容Sprint Boot

@RequestMapping(value = "/shutDown", method = RequestMethod.POST)
public ModelAndView shutDownPage(ModelAndView modelAndView, Authentication authentication,
        @ModelAttribute("ddata") DInputBean dInputBean) {
    String domain = dInputBean.getdomain();
    return modelAndView;
}

我希望可以从中获得domainHTML的价值,Controller但它始终为null。DInputBean具有getters and setters“域”字段。

杰森·怀特

th:field属性可用于上<input><select>或者,<textarea>

您可能会用<span>隐藏的输入元素代替第二个解决方案

<form action="#" th:action="@{/shutDown}" th:object="${ddata}" method="post">
    <span>Domain</span>
    <input type="hidden" th:field="*{domain}" th:value="${domain}" />
    <input type="Submit" value="close" />
</form>

如果要保留第二个div,只需将其<input type="hidden">放在第二个div内,<span>然后th:field从第二个div中删除该属性<span>

编辑:

如果要domain在跨度中添加的值

<form action="#" th:action="@{/shutDown}" th:object="${ddata}" method="post">
    <span>Domain</span>
    <span th:text="${domain}">domain<span>
    <input type="hidden" th:field="*{domain}" th:value="${domain}" />
    <input type="Submit" value="close" />
</form>

http://www.thymeleaf.org/doc/tutorials/3.0/thymeleafspring.html#inputs

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章