动态文本框及其在JSP bean中的值提交

时间:2011-07-11 03:00:40

标签: java jsp ejb

我有一个包含很少预定义文本框的表单,现在除了我创建了一些动态文本框,我可以用javascript(我猜)。在提交表单时,如何将动态生成的文本框的值设置为bean。在bean中我定义了字符串数组来保存动态生成的文本框值的内容。我没有使用任何框架,指导我如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以为所有输入字段指定相同的名称,并使用request.getParameterValues()按顺序获取HTML DOM树中显示的所有值。

E.g。 (JavaScript的生成)

<input type="text" name="foo" />
<input type="text" name="foo" />
<input type="text" name="foo" />
...

String[] values = request.getParameterValues("foo");
// ...

您还可以使用foo1foo2foo3等增量数字为名称添加后缀,并在循环中收集值,直到null为止接收。

E.g。

<input type="text" name="foo1" />
<input type="text" name="foo2" />
<input type="text" name="foo3" />
...

List<String> foos = new ArrayList<String>();

for (int i = 1; i < Integer.MAX_VALUE; i++) {
    String foo = request.getParameter("foo" + i);
    if (foo == null) break;
    foos.add(foo);
}

// ...