当前位置: 首页 > 知识库问答 >
问题:

Thymeleaf单选按钮TH:字段检查验证

单于俊智
2023-03-14

我正在尝试验证使用th:each创建的单选按钮的输入。在输入中使用th:field输出html中的checked=“checked”,这使得一个单选按钮被选中onload,但我不想要。如果我放置name=“field”,则不会发生这种情况,但是不会对字段进行验证,因为我不会使用th:field。

<form th:action="@{/dosomething}" th:object="${Object}" method="post">                                  
<div th:each="op : *{options}"> 
<input type="radio" th:field="*{options}" th:value="${op.id}"     th:id="${opStat.index}"/>                         
<label th:for="${opStat.index}" th:text="${op.optiontext}">Option   Text</label>
<button type="submit">Next</button>                 
</form>

<form action="/dosomething" method="post">                                  
<div>   
<input type="radio" value="1" id="0" name="options" checked="checked"/>                         
<label for="0">A</label>
</div>                                  
<div>   
<input type="radio" value="3" id="1" name="options" checked="checked"/>                         
<label for="1">B</label>
</div>                                  
<div>   
<input type="radio" value="4" id="2" name="options" checked="checked"/>                         
<label for="2">C</label>
</div>                                  
<div>   
<input type="radio" value="2" id="3" name="options" checked="checked"/>                         
<label for="3">D</label>
</div>              
<button type="submit">Next</button>             
</form>

共有1个答案

解高昂
2023-03-14

您使用单选按钮的方式没有意义。选定的单选按钮是单个值,但您正在尝试将其绑定到数组:th:field=“*{options}”(而不是单个字段,例如th:field=“*{selectedOpId}”)。

您的th:object上应该有一个字段来存储单选按钮选择的结果,您的th:each应该迭代一个常规模型属性。类似这样的事情:

<form th:action="@{/dosomething}" th:object="${Object}" method="post">
    <th:block th:each="op : ${options}">
        <input type="radio" th:field="*{chosenOptionId}" th:value="${op.id}" th:id="${opStat.index}"/>                         
        <label th:for="${opStat.index}" th:text="${op.optiontext}">Option Text</label>
    <th:block>

    <button type="submit">Next</button>                 
</form>
 类似资料:
  • 用户可以选择他/她想选择的任何一个,但是当某个事件触发时,我希望将设置为set checked单选按钮,因为这是默认的checked单选按钮。 我已经尝试了这个版本(有jQuery和没有jQuery):

  • 问题内容: 这似乎应该很容易,但是我没有找到答案。我有一个表格,需要在此表格中确认是否从广播组中进行了选择。我尝试在单选按钮上使用’required’属性,但是在验证表单后,除非所有单选按钮都被选中(设计上是不可能的),否则它将抱怨。 在AngularJS中验证无线电组选择的正确方法是什么? 单击Plnkr中的“提交”按钮将显示该行为。 http://plnkr.co/edit/3qcIbMvJk

  • 我正在开发一个示例项目,名为:网球俱乐部管理,使用javascript、HTML、CSS和Bootstrap。在这个项目中,我有一个管理者。html页面,其中有两个按钮添加播放器 注意:我需要做的是,当我点击保存按钮时,它应该检查是否选择了其中一个收音机(性别:男性/女性..在这种情况下)。我还没弄明白。下面是代码文件和屏幕截图 JSIDLE链接:https://jsfiddle.net/mohi

  • 我在Thymeleaf中有一个表单输入字段。字段(下面代码段中的BookingEntry.DateFrom)是类型日期。我使用datepicker来允许用户选择并格式化所需的日期以输入字段。这都没问题。 我确信我可以使用一个以我选择的任何格式初始化的字符串,而不是一个日期类型,但是我想知道是否有一种方法来格式化th:字段中的初始值? 多谢

  • 问题内容: 我尝试用jQuery检查单选按钮。这是我的代码: 和JavaScript: 不起作用: 不起作用: 不起作用: 你还有其他主意吗?我想念什么? 问题答案: 对于等于或大于(> =)1.6的jQuery版本,请使用: 对于(<)1.6之前的版本,请使用: 提示:之后, 您可能还想打电话或单击单选按钮。 查看评论以获取更多信息。

  • 在我的项目,我想改变src部分(AR-Button的src)相关的单选按钮检查。 例如:当你勾选“选项1”时,我想改变AR按钮上的src部件。与选中Option3x(选中option1和option1x)相比,我想再次更改src。 我的意思是,对于所有64个检查组合,我要更改SRC。 任何帮助或建议将是伟大的! 谢谢.. null null