我有一個帶有幾個預(yù)定義文字框的表單,現(xiàn)在除此之外我還創(chuàng)建了一些動態(tài)文字框,我可以用 javascript 來完成它(我猜)。提交表單時,如何將動態(tài)產(chǎn)生的文字方塊的值設(shè)為 bean。在 bean 中,我定義了字串陣列來保存動態(tài)產(chǎn)生的文字方塊值的內(nèi)容。我沒有使用任何框架,請指導(dǎo)我如何執(zhí)行此操作?
您可以為所有輸入欄位指定相同的名稱,然後使用 request.getParameterValues() 來按 HTML DOM 樹中出現(xiàn)的順序取得所有值。
例如(JavaScript 產(chǎn)生)
<input type="text" name="foo" /> <input type="text" name="foo" /> <input type="text" name="foo" /> ...
與
String[] values = request.getParameterValues("foo"); // ...
您也可以在名稱後面加上遞增數(shù)字,例如foo1
、foo2
、foo3
等,並在循環(huán)中收集值直到收到null
。
例如
<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); } // ...