我用list从数据库读取数据后,用hidden获取list编号,在另一页面显示得到只是第一条记录的编号,为什么?
代码如下:<script>functionEditSelected(){varstr=document.getElementById("chuanzhi").value;...
代码如下:
<script>
function EditSelected()
{
var str=document.getElementById("chuanzhi").value;
window.open("EditSinger.jsp?s_id="+str,"_blank");
}
</script>
<%
for(int i=0;i<singerlist.size();i++){
Singer ThisSinger =(Singer)singerlist.get(i);
%>
<tr align=middle bgColor=#ffffff>
<td><input type="checkbox" name="keys" value="<%=ThisSinger.getId()%>" onClick="colorChange(this,'#FFFFFF')" ></td>
<td><%=ThisSinger.getId()%></td>
<td><%=ThisSinger.getS_name()%></td>
<td><%=ThisSinger.getSex()%></td>
<td><%=ThisSinger.getArea()%></td>
<td width="170"><INPUT class=self_button onClick="DeleteSelected();" type=button value=删除所选项></td>
<td width="170"><INPUT class=self_button onClick="EditSelected();" type=button value=编辑></td>
<td><input type="hidden" name="chuanzhi" id="chuanzhi" value="<%=ThisSinger.getId()%>"></td>
</tr>
<%
}
%>
我就是通过s_id再另一个页面中查询,可是发现传过去的s_id值始终是1,不解。。 展开
<script>
function EditSelected()
{
var str=document.getElementById("chuanzhi").value;
window.open("EditSinger.jsp?s_id="+str,"_blank");
}
</script>
<%
for(int i=0;i<singerlist.size();i++){
Singer ThisSinger =(Singer)singerlist.get(i);
%>
<tr align=middle bgColor=#ffffff>
<td><input type="checkbox" name="keys" value="<%=ThisSinger.getId()%>" onClick="colorChange(this,'#FFFFFF')" ></td>
<td><%=ThisSinger.getId()%></td>
<td><%=ThisSinger.getS_name()%></td>
<td><%=ThisSinger.getSex()%></td>
<td><%=ThisSinger.getArea()%></td>
<td width="170"><INPUT class=self_button onClick="DeleteSelected();" type=button value=删除所选项></td>
<td width="170"><INPUT class=self_button onClick="EditSelected();" type=button value=编辑></td>
<td><input type="hidden" name="chuanzhi" id="chuanzhi" value="<%=ThisSinger.getId()%>"></td>
</tr>
<%
}
%>
我就是通过s_id再另一个页面中查询,可是发现传过去的s_id值始终是1,不解。。 展开
展开全部
当你调用EditSelected方法时 ,传过去的是什么呢
看你方法中的window.open("EditSinger.jsp?s_id="+str,"_blank");
?后面只有s_id参数 所以呢 你传过去的就是s_id这个参数。
这里有2个方法实现你的要求
1 就是通过传过去的s_id通过数据库取出其他字段值
效率不高
2 把其他需要传递的参数写进
window.open("EditSinger.jsp?s_id="+str,"_blank");
中
麻烦 但不需要再次访问数据库
看你方法中的window.open("EditSinger.jsp?s_id="+str,"_blank");
?后面只有s_id参数 所以呢 你传过去的就是s_id这个参数。
这里有2个方法实现你的要求
1 就是通过传过去的s_id通过数据库取出其他字段值
效率不高
2 把其他需要传递的参数写进
window.open("EditSinger.jsp?s_id="+str,"_blank");
中
麻烦 但不需要再次访问数据库
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询