使用JSP的动态InputFields

时间:2011-12-09 11:55:47

标签: jsp input struts dynamic-data

我正在使用jsp和struts实现一个简单的门户,用户在表单中填写一些参数并且我提供了一个表,表中的每个元素都是readOnly,除了一个,这是一个输入字段,用户可以完全填充。表是动态的,我永远不知道它会有多少行。那么使用JSP和struts如何处理动态数量的输入字段呢?

例如,表单有一个下拉列表,我使用struts taglib中的html:select标签实现,在ActionForm中我有一个数组,它将在每个请求中由struts框架填满。如果包含下拉列表中可能值的数组名称是“下拉列表”,则POST将类似于此"dropdown='value1'&dropdown='value2'",但我无法将此解决方案实现到动态输入字段。我需要帮助。

1 个答案:

答案 0 :(得分:0)

如果您的操作表单中有一个名为

的setter
public void setDropDown(String[] selectedValues)

然后Struts将使用一个数组调用它,该数组包含名为“dropDown”的所有选择框中的所有选定值。

如果您的操作表单中有一个名为

的setter
public void setDropDown(int index, String value)

然后Struts会为每个名为“dropDown [i]”的选择框调用一次,其中i是一个标识每一行的整数(每行一个索引)。

如果您的操作表单中有一个名为

的setter
public void setDropDown(String key, String value)

然后Struts将为名为“dropDown(key)”的每个选择框调用一次,其中key是标识每行(每行一个键)的键。

有关详细信息,请参阅http://struts.apache.org/1.x/struts-taglib/indexedprops.html