这个js是别人写的
我怎么收text框的值!
request.getParameter("text的Name是多少")<table id="myTable" width="98%" align="center" border="1" cellpadding="2" cellspacing="1">
<tr>
<td>
<div align="right">请选择</div>
</td>
<td colspan="5">
<select id="dropChoicesCount" onchange="selectedchange()" name="sel" runat="server" class="commdrop">
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>
</td>
</tr>
<tr>
<td></td>
<td>A</td>
<td>B</td>
<td>C</td>
<td>D</td>
<td>E</td>
</tr><tbody id="selecttbody">
<tr id="trTemplete">
<td align="right"></td>
<td><input type="text" name="t1" value="姓名"/></td>
<td><input type="text" name="t2" /></td>
<td><input type="text" name="t3"/></td>
<td><input type="text" name="t4"/></td>
<td><input type="text" name="t5"/></td>
</tr>
</tbody>
</table> <script language="javascript" type="text/javascript">
var tbody;
var template; //模板行
var a = ['姓名','年龄','性别','学历'];
window.onload = function() {
tbody = document.getElementById("selecttbody");
template = document.getElementById("trTemplete");
selectedchange();
}
function ClearRows() {
var newBody = document.createElement("tbody");
var tbl = document.getElementById("myTable");
tbl.replaceChild(newBody, tbody);
tbody = newBody;
}
function NewRow() {
//利用cloneNode(true)来复制
//你的这行就算有100个td,每个td都有不同的样式,都一次搞定!!!
var newRow = template.cloneNode(true);
tbody.appendChild(newRow);
return newRow;
}
function selectedchange() {
var n = document.getElementById("dropChoicesCount").value;
n = parseInt(n);
ClearRows();
for (var i = 0; i < n; i++) {
var nr = NewRow();
nr.cells[0].innerHTML =(i + 1);
nr.cells[1].children[0].value=a[i];
nr.cells[1].children[0].name="t1" + (i+1);
nr.cells[2].children[0].name="t2" + (i+1);
nr.cells[3].children[0].name="t3" + (i+1);
nr.cells[4].children[0].name="t4" + (i+1);
nr.cells[5].children[0].name="t5" + (i+1);
}
}
</script>
我怎么收text框的值!
request.getParameter("text的Name是多少")<table id="myTable" width="98%" align="center" border="1" cellpadding="2" cellspacing="1">
<tr>
<td>
<div align="right">请选择</div>
</td>
<td colspan="5">
<select id="dropChoicesCount" onchange="selectedchange()" name="sel" runat="server" class="commdrop">
<option value="4">4</option>
<option value="3">3</option>
<option value="2">2</option>
<option value="1">1</option>
</select>
</td>
</tr>
<tr>
<td></td>
<td>A</td>
<td>B</td>
<td>C</td>
<td>D</td>
<td>E</td>
</tr><tbody id="selecttbody">
<tr id="trTemplete">
<td align="right"></td>
<td><input type="text" name="t1" value="姓名"/></td>
<td><input type="text" name="t2" /></td>
<td><input type="text" name="t3"/></td>
<td><input type="text" name="t4"/></td>
<td><input type="text" name="t5"/></td>
</tr>
</tbody>
</table> <script language="javascript" type="text/javascript">
var tbody;
var template; //模板行
var a = ['姓名','年龄','性别','学历'];
window.onload = function() {
tbody = document.getElementById("selecttbody");
template = document.getElementById("trTemplete");
selectedchange();
}
function ClearRows() {
var newBody = document.createElement("tbody");
var tbl = document.getElementById("myTable");
tbl.replaceChild(newBody, tbody);
tbody = newBody;
}
function NewRow() {
//利用cloneNode(true)来复制
//你的这行就算有100个td,每个td都有不同的样式,都一次搞定!!!
var newRow = template.cloneNode(true);
tbody.appendChild(newRow);
return newRow;
}
function selectedchange() {
var n = document.getElementById("dropChoicesCount").value;
n = parseInt(n);
ClearRows();
for (var i = 0; i < n; i++) {
var nr = NewRow();
nr.cells[0].innerHTML =(i + 1);
nr.cells[1].children[0].value=a[i];
nr.cells[1].children[0].name="t1" + (i+1);
nr.cells[2].children[0].name="t2" + (i+1);
nr.cells[3].children[0].name="t3" + (i+1);
nr.cells[4].children[0].name="t4" + (i+1);
nr.cells[5].children[0].name="t5" + (i+1);
}
}
</script>
for (var i = 0; i < n; i++) {
var nr = NewRow();
nr.cells[0].innerHTML =(i + 1);
nr.cells[1].children[0].value=a[i];
nr.cells[1].children[0].name="otxt"
nr.cells[2].children[0].name="otxt";
nr.cells[3].children[0].name="otxt";
nr.cells[4].children[0].name="otxt";
nr.cells[5].children[0].name="otxt"; //你个可以把这些文本框用一个NAME
}
JAVA里String[] txtValue = request.getParamaterValues("otxt"); //获取整个文本数组
for(i=0;i<n;i++){
request.getParameter("t1" + (i+1).toString())
request.getParameter("t2" + (i+1).toString())
request.getParameter("t3" + (i+1).toString())
request.getParameter("t4" + (i+1).toString())
request.getParameter("t5" + (i+1).toString())
}
int n=Integer.parseInt(request.getParameter("sel")); 接收到了值
但写上这个就出现红点了
Cannot invoke toString() on the primitive type intfor(int i=0;i <n;i++){
request.getParameter("t1" + (i+1).toString());
request.getParameter("t2" + (i+1).toString());
request.getParameter("t3" + (i+1).toString());
request.getParameter("t4" + (i+1).toString());
request.getParameter("t5" + (i+1).toString());
} (i+1).toString()这里好像不能调用toString()方法
var nr = NewRow();
nr.cells[0].innerHTML =(i + 1);
nr.cells[1].children[0].value=a[i];
nr.cells[1].children[0].name=(i+1)+"t1";
nr.cells[2].children[0].name=(i+1)+"t2" ;
nr.cells[3].children[0].name=(i+1)+"t3" ;
nr.cells[4].children[0].name=(i+1)+"t4" ;
nr.cells[5].children[0].name=(i+1)+"t5" ;
}
下面这样接收
[code=Java]
for(int i=0;i <n;i++){
request.getParameter((i+1)+"t1".toString());
}
/code]
1、这应该可以收到最后一笔数据吧!!
但输入没东西
2、nr.cells[1].children[0].value=a[i];
这个数组怎么接收?
3、还有希望给个好点的方法
怎么实现当我选3的时候就出现3组接收语句同理选别的一样、我自己的思路就是接收select的value用if判断for(int i=0;i <n(n-1);i++){
olosl=Integer.parseInt(request.getParameter("t1"+(new Integer(i+1)).toString()));
olcs=request.getParameter("t2"+(new Integer(i+1)).toString());
olzs1=request.getParameter("t3"+(new Integer(i+1)).toString());
olzs2=request.getParameter("t4"+(new Integer(i+1)).toString());
olylpd=request.getParameter("t5"+(new Integer(i+1)).toString());
}
System.out.println(olosl);
System.out.println(olcs);
System.out.println(olzs1);
System.out.println(olzs2);
System.out.println(olylpd);没结果
n 就是接收select的value
----------
如果要接受js数组,需要将数组中的值按一定格式组织成字符串递交,比如xx,xx,xx