ActionForm:
public List checkResultList = new AutoArrayList(SourceCodeCheckResult.class);
public List getCheckResultList() {
return checkResultList;
}
public void setCheckResultList(List checkResultList) {
this.checkResultList.clear();
this.checkResultList.addAll(checkResultList);
}
AutoArrayList
import java.util.ArrayList;
public class AutoArrayList extends ArrayList {
private Class itemClass;
public AutoArrayList(Class itemClass) {
this.itemClass = itemClass;
}
public Object get(int index) {
try {
while (index >= size()) {
add(itemClass.newInstance());
}
} catch (Exception e) {
e.printStackTrace();
}
return super.get(index);
}
}
页面上代码:
<logic:iterate id="checkResultList" name="requestForm" property="checkResultList" indexId="logId">
<tr>
<td><bean:write property="lineNo" name="checkResultList" /></td>
<td>
<bean:define id="rule" name="checkResultList" property="rule" />
<a href="#" class="clickTip" ruleid='<bean:write property="id" name="rule" />' />
#<bean:write property="id" name="rule" /> <bean:write property="name" name="rule" />
</a>
</td>
<td>
<html:hidden property="logId" name="checkResultList" indexed="true"/>
<html:textarea property="reason" cols="5" rows="10" name="checkResultList" indexed="true"/></td>
<td><html:textarea property="comment" cols="5" rows="10" name="checkResultList" indexed="true"/></td>
<td>
<html:select name="checkResultList" property="reason" onchange="checkHistoryReason()">
<html:option value="">----Please Select one -----</html:option>
<logic:notEmpty property="history" name="checkResultList">
<html:options property="history" name="checkResultList"/>
</logic:notEmpty>
</html:select>
</td>
</tr>
</logic:iterate>
Action代码:
RequestForm requestForm = (RequestForm)form;
List updateData = requestForm.getCheckResultList();
SourceCodeCheckDao dao = (SourceCodeCheckDao) SpringBeanFactory
.getBean(SourceCodeCheckDao.ROLE);
boolean pass = dao.updateCheckRusultList(updateData);
分享到:
相关推荐
在Struts框架中处理多行数据提交的问题是一个常见的开发场景,尤其当涉及到表格形式的数据录入时。本文将深入探讨如何在Struts框架下实现多行数据的动态添加与提交,结合给定的代码示例进行详细解析。 ### Struts...
当我们需要在客户端提交多行数据时,通常会利用表单来收集信息,然后将这些数据传递到服务器端的ActionForm。这个过程涉及到如何将客户端的数据组织成一个集合,如List,并将其绑定到ActionForm的属性上。在本篇中,...
- `s:submit`:创建提交按钮,触发表单提交。 - `s:form`:创建表单,可以自动处理Action的验证和结果跳转。 - `s:property`:显示Action属性的值。 - `s:action`:执行一个Action并显示结果。 - `s:debug`:...
- `<s:submit>`:创建提交按钮,触发Action的执行。 - `<s:checkbox>`和`<s:radio>`:创建复选框和单选按钮。 - `<s:select>`:创建下拉列表,可以从Action的属性或静态资源中获取选项。 - `<s:if>`和`<s:else>`...
2. `<html:text>`:用于创建输入文本字段,其`name`属性对应ActionForm中的属性名,这样表单提交后,Struts框架会自动将该字段的值绑定到对应的ActionForm属性。 3. `<html:password>`:与`<html:text>`类似,但...
3. `s:textarea`: 创建多行文本输入框,同样支持属性绑定。 4. `s:checkbox`和`s:checkboxlist`: 处理复选框,用于多选数据。 5. `s:radio`和`s:radiobuttonlist`: 处理单选按钮,用于单选数据。 6. `s:select`和`s:...
3. `<s:textarea>`:创建文本区域,与`s:textfield`类似,但用于多行文本输入。 4. `<s:password>`:创建密码输入字段,保证输入内容不被明文显示。 5. `<s:radio>`和`s:checkbox`:创建单选按钮和复选框,通常与`...
5. `<html:text>`、`<html:password>`和`<html:textarea>`标签:它们分别用于创建文本输入框、密码输入框和多行文本输入框。`name`属性指定与表单bean关联的bean名称,`property`属性指定bean的属性,`value`(仅对`...
3. `<s:textarea>`:创建多行文本输入框。 4. `<s:submit>`:创建提交按钮,处理表单提交。 5. `<s:if>`和`s:else>`:条件判断,控制页面渲染。 6. `<s:i18n>`:国际化支持,显示不同语言的内容。 四、Struts2拦截...
UI标签包括但不限于`s:textfield`(文本字段)、`s:textarea`(多行文本框)、`s:submit`(提交按钮)、`s:checkbox`和`s:radiobutton`(复选框和单选按钮)、`s:select`(下拉列表)等。这些标签简化了HTML元素的...
3. **表单标签**:Struts2的表单标签简化了HTML表单的创建,如`s:textfield`、`s:password`、`s:textarea`分别对应文本输入框、密码输入框和多行文本输入框。还有`s:checkbox`、`s:radio`和`s:select`用于创建复选框...
- `<html:text>`、`<html:password>`、`<html:textarea>`:分别用于创建文本输入框、密码输入框和多行文本区域,它们会绑定到ActionForm的属性上。 - `<html:submit>`、`<html:image>`:用于创建提交按钮和图像...
除了`<s:textfield>`,Struts2还提供了多种表单标签,如`<s:password>`用于创建密码输入框,`<s:textarea>`用于创建多行文本输入框,`<s:radio>`和`<s:checkbox>`用于创建单选按钮和复选框,以及`<s:select>`用于...
2. **表单标签(Form Tags)**:专门处理HTML表单的标签,例如`<s:textfield>`用于创建文本输入框,`<s:textarea>`创建多行文本输入框,`<s:submit>`定义提交按钮,还有`<s:checkbox>`和`s:radio>`用于复选框和单选...
- 在处理表单提交时,利用Struts2的表单标签,框架会自动处理数据验证和类型转换。 6. **注意事项**: - 确保在web.xml中配置了Struts2的核心过滤器`<filter-class>org.apache.struts2.dispatcher.ng.filter....
2. `s:textarea`: 用于创建多行文本输入框,同样支持数据绑定。 3. `s:checkbox` 和 `s:radio`: 分别用于生成复选框和单选按钮,可以方便地处理一组选项。 4. `s:select`: 创建下拉选择列表,支持动态加载数据。 ...
3. `<s:textarea>`:创建多行文本输入框,与Action类的属性关联,适用于长文本输入。 4. `<s:submit>`:定义提交按钮,可以触发指定的Action方法。 5. `<s:select>`:创建下拉选择框,可以从Action类中获取选项...
2. **显示文本**:`<s:textfield>`用于创建输入字段,`<s:textarea>`用于创建多行文本输入框,它们都支持各种HTML属性,如name、id等,以及Struts2特有的验证规则。 3. **表单处理**:`<s:form>`标签用于创建HTML...
- `s:textarea`:创建多行文本输入框。 - `s:checkbox`和`s:checkboxlist`:处理复选框。 - `s:radio`和`s:radiolist`:处理单选按钮。 - `s:select`和`s:option`:用于创建下拉选择框。 - `s:label`:创建标签...
- `s:textarea`:用于创建多行文本输入框,如 `描述"/>`。 - `s:submit`:创建提交按钮,如 `提交"/>`。 - `s:form`:定义表单,可以设置表单的action和method,如 `<s:form action="saveUser" method="POST">`。...