用JS获取值传递参数提交的问题
<scriptlanguage="JavaScript"type="text/javascript">functionlink1(){varflag=confirm("确...
<script language="JavaScript" type="text/javascript">
function link1()
{
var flag = confirm("确定保存吗?");
if(flag) //用户点击"确定"返回true
{
document.getElementById("fom").action="sal_chanceservlet?m=7&n=2";
document.getElementById("fom").submit();
}
else //点击取消返回false
{
return false; //取消默认行为
}
}
</script>
这是触发的js提交,下面是页面参数。我把做修改需要的参数pladate,platodo,pid,id获取了用js传到servlet对应项中处理,结果是每次只处理第一条遍历的数据,因为我提交过去的是多组参数,我没有指名,所以每次都只是在获取第一条数据,有什么办法可以避免这个问题
<td >日期</td>
<td >计划项</td>
<c:forEach items="${pe}" var="p">
<tr>
<td ><input type="text" name="pladate" value="${p.pladate}" readonly="readonly"/></td>
<td><input type="text" name="platodo" onblur="z3()" value="${p.platodo}"/></td>
<td"><input name="pid" type="hidden" value="${p.plid}"/><input name="id" type="hidden" value="${p.chance.chcid}"/><input type="button" onclick="return link1()" value="保 存"/> </td>
</tr>
</c:forEach>
</table></td>
就是一个不根据ID查询直接遍历做修改的方法,在JSP中怎么使遍历取到的值是我想要的那行,怎样实现参数传递到sevrlt 展开
function link1()
{
var flag = confirm("确定保存吗?");
if(flag) //用户点击"确定"返回true
{
document.getElementById("fom").action="sal_chanceservlet?m=7&n=2";
document.getElementById("fom").submit();
}
else //点击取消返回false
{
return false; //取消默认行为
}
}
</script>
这是触发的js提交,下面是页面参数。我把做修改需要的参数pladate,platodo,pid,id获取了用js传到servlet对应项中处理,结果是每次只处理第一条遍历的数据,因为我提交过去的是多组参数,我没有指名,所以每次都只是在获取第一条数据,有什么办法可以避免这个问题
<td >日期</td>
<td >计划项</td>
<c:forEach items="${pe}" var="p">
<tr>
<td ><input type="text" name="pladate" value="${p.pladate}" readonly="readonly"/></td>
<td><input type="text" name="platodo" onblur="z3()" value="${p.platodo}"/></td>
<td"><input name="pid" type="hidden" value="${p.plid}"/><input name="id" type="hidden" value="${p.chance.chcid}"/><input type="button" onclick="return link1()" value="保 存"/> </td>
</tr>
</c:forEach>
</table></td>
就是一个不根据ID查询直接遍历做修改的方法,在JSP中怎么使遍历取到的值是我想要的那行,怎样实现参数传递到sevrlt 展开
3个回答
展开全部
你可以将你的多条内容组成一个字符串,每条内容都已以特定的字符进行分割,然后存入到数组中去,在提交到后台java代码时,从数组中取出字符串,在按照特定字符把每条内容解析开就OK了。
字符串内容:<pid>内容1</pid><platodo>内容2</platodo><pladate>内容3</pladate>
字符串内容:<pid>内容1</pid><platodo>内容2</platodo><pladate>内容3</pladate>
更多追问追答
追问
额……详细的说下可以吗?没用过分割
追答
String srcstring1=" this@is@a@about@split@test";
//根据@对字符串进行分割
String stringarray1[]=srcstring1.split("@");
for(String stemp:stringarray1){
System.out.println(stemp);
}
自己运行下就知道了。
在jdk文档中看String的split方法
展开全部
<input type="text" name="pladate" value="${p.pladate}" 这些name的名字加个参数区分下,使所有的name值都不同,如name="pladate${p.id}"
更多追问追答
追问
你的意思是用遍历的ID放在文本框名字中,那每个文本框中的名字都不一样,可以做到区分的效果,这个我考虑到过,这样做了在JSP页面是没问题,可是在sevrlt中怎么取这个name值呢?
追答
你说的是Servlet吧,这个我不熟,但我想应该是一样的,可以获取到form表单里的所有数据。另外你的表单是要提交所有的input内容,提交表单的按钮为什么要放到循环里呢。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
后台怎么取值的,可能通过getParamValues()取值
更多追问追答
追问
你这个方法我刚才试了,取得必须是字符串,我强转整型的代码报错去了。
追答
你怎么转的Integer.parseInt()这个方法是可以的,我用到过的类似
String[] ajs=request.getParameterValues("ajs");
Integer.parseInt(ajs[i])
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询