我在写一个程序的时候碰到这样一个问题,页面上现在有10个以上的输入框,并且这10个输入框的name和ID 都是类似的 比如 name1 name2 name3 id1 id2 id3 等 ,现在要对这些输入框的值在后天java程序中进行操作 怎么获取?
另外这10个输入框下面有个增加输入框按钮 点击以后会再次增加 10个(js已经实现了) 这时候值怎么获取? 页面代码如下:
<%@ page language="java"%>
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="com.gt.dataObj.function.jjd.clgl.*,java.util.*,com.gt.formbean.jjd.clgl.*,com.gt.util.common.UTIL"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>表单操作</title>
<style type="text/css">
* { margin: 0; padding: 0}
table.formadd { border: 1px solid #ccc; border-collapse: collapse}
table.formadd td { border: 1px solid #ccc; padding: 2px; line-height:30px; vertical-align:middle}
table.formadd input { padding: 2px;}.Formdiv { width: 805px; margin: 20px auto;}
.btnpopup { height: 20px; width: 12px; background: #00F; display: block}
.w_input input { position: relative; left: 10px;}
.w_input select { position: relative; left: 10px; width:75%}
</style>
<script type="text/javascript" src="<%=basePath%>js/jquery.js"></script>
<script type="text/javascript" src="<%=basePath%>js/cookie.js"></script>
<script language ="javascript" src="<%=basePath%>/My97DatePicker/WdatePicker.js" ></script>
<script type="text/javascript">
$(function(){
var newHtml = addRow(0,10);
$('.form_btn').before(newHtml);
$('.addForm').click(function(){
var num = $('.form_btn').prev('tr').find('input').eq(0).attr('id');
num = num.replace("u_id","");
num = parseInt(num);
alert(num);
var newHtml = addRow(num,num+10)
$('.form_btn').before(newHtml);
})
//表单后循环加入新的行
function addRow(start,end)
{
var foreachnum = end - start;
var addHtml = new Array();
for (i = 1;i<=foreachnum;i++)
{
var numnew = start + i;
addHtml.push('<tr>');
//增加弹出选择的单元格
addHtml.push('<td align="center"><a class="btnpopup" id="p' + numnew + '"></a><input type="hidden" name="u_id' + numnew +'" id="u_id' + numnew +'" /></td>');
addHtml.push('<td class="num_num">'+ numnew +'</td><td>卡号:</td>');
addHtml.push('<td class="w_input"><input type="text" name="card' + numnew + '" id="card' + numnew + '" /></td>');
addHtml.push('<td>车号:</td>');
addHtml.push('<td class="w_input"><input type="text" name="car' + numnew + '" id="car' + numnew + '" /></td>');
addHtml.push('<td>资金:</td>');
addHtml.push('<td class="w_input"><input type="text" name="money' + numnew + '" id="money' + numnew + '" /></td>');
addHtml.push('</tr>');
}
return addHtml.join("");
}
})
$(function(){
$('.btnpopup').click(function(){
var u_id = $(this).attr('id');
$.cookie('btn_id', u_id, { expires: 7, path: '/'});
//alert($.cookie('btn_id'));
var str = window.open("<%=basePath%>include/form_ykbd.jsp", "self", "dialogWidth=1140px, height=600, toolbar= no, menubar=no, scrollbars=yes, resizable=no, location=no, status=no,top=50,left=50");
//alert(str) ;
})
})
</script>
</head><body>
<div class="Formdiv">
<form action="">
<table class="formadd" width="805" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="8" align="center"><table class="formadd" style=" border: none 0; border-collapse: collapse " width="805" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>编号:</td>
<td class="w_input"><input type="text" name="textfield" id="textfield" /></td>
<td>部门:</td>
<td class="w_input">
<select name="select" id="select">
</select></td>
<td>日期:</td>
<td class="w_input"><input type="text" name="textfield2" id="textfield2" onFocus="WdatePicker()" /></td>
</tr>
<tr>
<td>审核人:</td>
<td class="w_input"><input type="text" name="textfield3" id="textfield3" /></td>
<td>费用:</td>
<td class="w_input"><input type="text" name="textfield4" id="textfield4" /></td>
<td>原因:</td>
<td class="w_input"><input type="text" name="textfield4" id="textfield4" /></td>
</tr>
</table></td>
</tr>
<tr class="form_btn">
<td colspan="7" align="right"><label for="button"></label>
<input type="submit" name="button" id="button" value="保存增油信息" /></td>
</tr>
</table>
<p class="addForm" style="text-align:right">添加行</p>
</form>
</div>
</body>
</html>
另外这10个输入框下面有个增加输入框按钮 点击以后会再次增加 10个(js已经实现了) 这时候值怎么获取? 页面代码如下:
<%@ page language="java"%>
<%@ page contentType="text/html; charset=gb2312"%>
<%@ page import="com.gt.dataObj.function.jjd.clgl.*,java.util.*,com.gt.formbean.jjd.clgl.*,com.gt.util.common.UTIL"%>
<html xmlns="http://www.w3.org/1999/xhtml">
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>表单操作</title>
<style type="text/css">
* { margin: 0; padding: 0}
table.formadd { border: 1px solid #ccc; border-collapse: collapse}
table.formadd td { border: 1px solid #ccc; padding: 2px; line-height:30px; vertical-align:middle}
table.formadd input { padding: 2px;}.Formdiv { width: 805px; margin: 20px auto;}
.btnpopup { height: 20px; width: 12px; background: #00F; display: block}
.w_input input { position: relative; left: 10px;}
.w_input select { position: relative; left: 10px; width:75%}
</style>
<script type="text/javascript" src="<%=basePath%>js/jquery.js"></script>
<script type="text/javascript" src="<%=basePath%>js/cookie.js"></script>
<script language ="javascript" src="<%=basePath%>/My97DatePicker/WdatePicker.js" ></script>
<script type="text/javascript">
$(function(){
var newHtml = addRow(0,10);
$('.form_btn').before(newHtml);
$('.addForm').click(function(){
var num = $('.form_btn').prev('tr').find('input').eq(0).attr('id');
num = num.replace("u_id","");
num = parseInt(num);
alert(num);
var newHtml = addRow(num,num+10)
$('.form_btn').before(newHtml);
})
//表单后循环加入新的行
function addRow(start,end)
{
var foreachnum = end - start;
var addHtml = new Array();
for (i = 1;i<=foreachnum;i++)
{
var numnew = start + i;
addHtml.push('<tr>');
//增加弹出选择的单元格
addHtml.push('<td align="center"><a class="btnpopup" id="p' + numnew + '"></a><input type="hidden" name="u_id' + numnew +'" id="u_id' + numnew +'" /></td>');
addHtml.push('<td class="num_num">'+ numnew +'</td><td>卡号:</td>');
addHtml.push('<td class="w_input"><input type="text" name="card' + numnew + '" id="card' + numnew + '" /></td>');
addHtml.push('<td>车号:</td>');
addHtml.push('<td class="w_input"><input type="text" name="car' + numnew + '" id="car' + numnew + '" /></td>');
addHtml.push('<td>资金:</td>');
addHtml.push('<td class="w_input"><input type="text" name="money' + numnew + '" id="money' + numnew + '" /></td>');
addHtml.push('</tr>');
}
return addHtml.join("");
}
})
$(function(){
$('.btnpopup').click(function(){
var u_id = $(this).attr('id');
$.cookie('btn_id', u_id, { expires: 7, path: '/'});
//alert($.cookie('btn_id'));
var str = window.open("<%=basePath%>include/form_ykbd.jsp", "self", "dialogWidth=1140px, height=600, toolbar= no, menubar=no, scrollbars=yes, resizable=no, location=no, status=no,top=50,left=50");
//alert(str) ;
})
})
</script>
</head><body>
<div class="Formdiv">
<form action="">
<table class="formadd" width="805" border="0" cellspacing="0" cellpadding="0">
<tr>
<td colspan="8" align="center"><table class="formadd" style=" border: none 0; border-collapse: collapse " width="805" border="0" cellspacing="0" cellpadding="0">
<tr>
<td>编号:</td>
<td class="w_input"><input type="text" name="textfield" id="textfield" /></td>
<td>部门:</td>
<td class="w_input">
<select name="select" id="select">
</select></td>
<td>日期:</td>
<td class="w_input"><input type="text" name="textfield2" id="textfield2" onFocus="WdatePicker()" /></td>
</tr>
<tr>
<td>审核人:</td>
<td class="w_input"><input type="text" name="textfield3" id="textfield3" /></td>
<td>费用:</td>
<td class="w_input"><input type="text" name="textfield4" id="textfield4" /></td>
<td>原因:</td>
<td class="w_input"><input type="text" name="textfield4" id="textfield4" /></td>
</tr>
</table></td>
</tr>
<tr class="form_btn">
<td colspan="7" align="right"><label for="button"></label>
<input type="submit" name="button" id="button" value="保存增油信息" /></td>
</tr>
</table>
<p class="addForm" style="text-align:right">添加行</p>
</form>
</div>
</body>
</html>
个人建议: 你的id没问题,name不要用name1,name2...这样, 同一类型的name的名字你都取一样的,在后台获取的时候取数组就是了,就跟多个checkbox的取值方式一样,数组中值的顺序跟你页面上控件的顺序是一样的。这个会很简单,不知对你能否行得通。
public String[] getcard() {
return card;
} public void setcard(String[] cart) {
this.card = card;
}
但是打印 一直是空的 不知道怎么回事?是不是我写的有问题?
直接将
td class="w_input"><input type="text" name="textfield" id="textfield" /></td>
改为
td class="w_input"><input type="text" name="card" id="textfield" /></td>然后你试试看