用JS生成的动态输入框在Struts2的action中如何获取所有的value

现在的情况是,JSP页面已经实现了动态添加输入框,并且每个输入框都是用(item+i),i=1,2,3……来标记name。但是如何在action中来获取到所有动态生成的输入框的值。另外说明一点的是,jsp上的这种动态输入框是一次生成两个,也就是键值对形式的,key:item+i,value:money+i。这样在action中如何获取到所有键值对。高手们有什么可行的方案,还望指导,谢谢!下面是相关jsp部分代码:
<script language="javascript">
function add(){
//取得表格
var table = document.getElementById("table1");
//取得行数;
var num = table.rows.length;
//增加一行
var newrow1 = table.insertRow(num-1);
var cell1 = newrow1.insertCell();
var cell2 = newrow1.insertCell();

//增加行元素
var inputcell1 = document.createElement("<input name=''>");
cell1.appendChild(inputcell1);
var inputcell2_1 = document.createElement("<input name=''>");
var inputcell2_2 = document.createElement("<input type='button' value='删除元素'onClick='del(this);'/>");
cell2.appendChild(inputcell2_1);
cell2.appendChild(inputcell2_2);
//刷新标签显示
frash();
}
function del(obj){
//取得按钮所在行
var i = obj.parentNode.parentNode.rowIndex;
var tab = document.getElementById("table1");
var num = tab.rows.length;
if(num>3)
//删除按钮所在行
tab.deleteRow(i);
frash();
}
function frash(){
var table = document.getElementById("table1");
var num = table.rows.length;
//计算动态元素个数
var n = num-2;
for(i=2;i<=n;i++){
//设置标签值
// table.rows[i].cells[0].innerText="元素"+i+"属性A";
//设置属性值
table.rows[i].cells[0].childNodes[0].setAttribute("name","item"+i);
//table.rows[i].cells[2].innerText="元素"+i+"属性B";
table.rows[i].cells[1].childNodes[0].setAttribute("name","money"+i);
}
}
</script>
<body>
<s:form action="testItem" namespace="/" method="post">
<table id="table1" width="60%" border="1" cellpadding="0" cellspacing="0">
<tr>
<td>支出项目</td>
<td>预算经费</td>
</tr>
<tr>
<td><input name="item1"/></td>
<td><input name="money1"/></td>
</tr>
<tr>
<td colspan="2" align="center"><a href="#" onclick="add();">添加</a></td>
</tr>
</table>
</s:form>
我懂一楼的意思,但是我的是动态输入框,个数是不确定的,你不知道有几个input,而且我最终要全部收集起来弄成一个集合,最好能给出具体代码

在Action的相应方法中使用request.getParameterNames方法可以获得表单中提交的所有数据的名称,然后循环使用这个request.getParameter("name")来一个一个获取每个name的值。这样就可以获得所有的值了。
温馨提示:答案为网友推荐,仅供参考