遇到的问题:在使用该标签时,设置了默认选中项,但提交数据返回后,单选框不能显示之前选中的项,仍然为默认选项
通过测试得出以下结论:
以<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" theme="simple"></s:radio>为例
在使用s:radio标签的时候,如果要使该标签默认选中一项,可以通过两种方法
1、通过js代码实现
document.getElementsByName('user.sex')[0].checked=true;//默认选中男
2、通过添加value属性
<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" value="1" theme="simple"></s:radio>
在通过value属性设置单选框的默认选项时,无论何时页面刷新后单选框的状态都是选中该默认项
因此,如果要让数据提交后台后,该单选框仍然是之前选中的项,不能通过value属性设置它的默认项,应该通过第一种方法设置
此外,后台能够正确获取该单选框的值,而与value的设置无关
加个条件判断一下user==null
<s:if test="user==null">
<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" value="1"></s:radio>
</s:if>
<s:else>
<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" ></s:radio>
</s:else>
分享到:
相关推荐
下面通过两个具体的场景来进一步说明如何在Struts2中正确地使用`s:if`标签: ##### 场景一:遍历列表并进行比较 ```xml <s:iterator value="FunTypeList"> <input type="radio" name="<s:property value='...
<%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-----超链接,类似于html里的<a></a> 3. <s:...
`<s:radio>, <s:reset>, <s:select>`: 创建单选按钮、重置按钮和下拉选择框。 S. `<s:set>, <s:sort>, <s:submit>, <s:subset>`: `<s:set>` 赋值给变量,`<s:sort>` 对集合进行排序,`<s:submit>` 创建提交按钮,`...
例如:<s:append id="myAppendIterator"> <s:param value="%{myList1}" /> <s:param value="%{myList2}" /> <s:param value="%{myList3}" /></s:append><s:iterator value="%{#myAppendIterator}"> <s:property /></...
<p>名称:<s:property value="name"/></p> </s:iterator> ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`<s:label>`** - 显示标签。 - **示例**: ```jsp <s:label value=...
文本框标签:<s:textfield /> 文本框标签是Struts2标签库中最常用的标签之一,它用于生成文本框控件。例如:<s:textfield name="username" label="用户名" />,该标签将生成一个名为“username”的文本框控件,并...
而在 Struts2 中,所有的标签都被统一管理,并通过在 JSP 文件头部声明 `<%@ taglib prefix="s" uri="/struts-tags" %>` 来启用 Struts2 的标签库。这种方式简化了开发过程中的配置工作,使得开发者可以更加专注于...
以上只是Struts2标签库的一部分,实际使用中还有更多标签如`<s:textfield>`(文本输入框)、`<s:textarea>`(文本区域)、`<s:submit>`(提交按钮)等,每个都有其特定的用途,极大地简化了JSP页面的编写。...
<%@ taglib uri="/struts-tags" prefix="s" %> 结合例子,重点掌握以下标签的用法 (1) <s:property> (2) <s:set> (3) <s:if> 、<s:elseif>、<s:else> (4) <s:iterator> (5) <s:include> (6) <s:form>、<s:hidden> (7...
表单标签库是Struts2的一大特色,它包括`<s:form>`,`<s:textarea>`,`<s:radio>`,`<s:checkbox>`等,这些标签提供了强大的表单处理功能,如自动验证、错误显示和动态表单生成。 **6. 使用Struts标签库的优势** -...
5. `<s:radio>`和`s:checkbox`:创建单选按钮和复选框,通常与`list`属性一起使用,显示可选的选项。 6. `<s:select>`:创建下拉选择框,可以动态加载选项。 7. `<s:submit>`:创建提交按钮,触发Action的执行。 8. ...
* <s:radio>:单选按钮 * <s:reset>:重置按钮 S: * <s:select>:下拉框 T: 无标签 U: 无标签 V: 无标签 W: 无标签 X: 无标签 Y: 无标签 Z: 无标签 这些标签都是 Struts2 框架中提供的,...
- `<s:checkbox>`和`<s:radio>`:创建复选框和单选按钮,可以与Action类中的数组或List类型属性关联。 - `<s:submit>`:提交按钮,触发表单的提交事件。 4. **控制流标签(Control Flow Tags)** - `<s:include>...
4. **`<s:radio>`** 和 `<s:checkbox>` 标签: 这两个标签用于创建单选按钮和复选框。`list`属性通常用于指定一组选项,而`value`属性用于指定选中项的值。 5. **`<s:select>`** 标签: 用于创建下拉选择框,可以...
2. **表单标签(Form Tags)**:专门处理HTML表单的标签,例如`<s:textfield>`用于创建文本输入框,`<s:textarea>`创建多行文本输入框,`<s:submit>`定义提交按钮,还有`<s:checkbox>`和`s:radio>`用于复选框和单选...
例如,`<s:textfield>`用于创建文本输入框,`<s:checkbox>`和`s:radio>`用于创建复选框和单选按钮,`<s:submit>`则用于提交表单。 **逻辑标签库** 提供了控制流程的标签,如条件语句和循环结构。例如,`<s:if>`和`s...
6. `<s:textarea>`、`<s:radio>`、`<s:checkbox>`、`<s:select>`:这些标签用于创建各种输入控件,如文本区域、单选按钮、复选框和下拉列表。 三、Struts2主题标签 Struts2的主题标签允许开发者自定义视图的外观和...
1. `<s:radio>` - 单选按钮,可以设置列表,如:`<s:radio list="myList" name="selectedItem" />`。 2. `<s:reset>` - 创建重置按钮,清除表单数据。 **S组标签:** 1. `<s:select>` - 创建下拉选择框,可以绑定到...
- `<s:radio>`:创建单选按钮组。 - `<s:checkboxlist>`和`s:radiolist`:创建多个复选框或单选按钮的列表。 - `<s:file>`:用于文件上传,通常与`<s:form>`的enctype属性配合使用。 - **非表单UI标签**: - `...