代码如下:
<form action="Result2.jsp" name="form1" method="post"> 
<c:forEach var="row" items="${query1.rows}">
<tr>
<td>
<c:out value="${row.bookId}" />
<input type="hidden" value="${row.bookid}" name="bookId${i}">
</td>
<td>
<a href="#" onclick="javascript:document.form1.submit()">编辑</a>
</td>
</tr>
</c:forEach>
</form>
在该段代码中,当我在Result2.jsp页面接收hidden值得时候,为什么只是接受第一行的bookId值,应该是我选择第二条记录的编辑链接时显示第二行的bookId。可能这种解决方法有问题,各路高手有否更好的解决方法,或者是把以上代码帮小弟解决一下,不胜感激。奉献50分!谢谢!

解决方案 »

  1.   

    先在这段代码中把i的值也传过去,或者把${query1.rows}"的长度传过去,下个页面才能根据bookId1,bookId2, bookId3...一一接收
      

  2.   

    我的代码有误。现改正如下:
    <form   action="Result2.jsp"   name="form1"   method="post">   
    <c:forEach   var="row"   items="${query1.rows}"> 
    <tr> 
    <td> 
    <c:out   value="${row.bookId}"   /> 
    <input   type="hidden"   value="${row.bookid}"   name="bookId"> 
    </td> 
    <td> 
    <a   href="#"   onclick="javascript:document.form1.submit()"> 编辑 </a> 
    </td> 
    </tr> 
    </c:forEach> 
    </form> 
    怎样把不同tr中的bookId值取出来,而不是像现在,只取了第一行bookId
      

  3.   

    请问是不是只取到了最后一个bookId的值?我也做过个一题是,从数据库里读出来的数据显示出来,每个数据都可以提交到一个JSP页面里显示出来,我的理解是,是不是在FORM里只能有一个隐藏表单域,你可以试试吧form写在 froEach里也就是说,一个hidden对应一个form
      

  4.   

    不是,每次都只取到第一个bookId.
      

  5.   

    按你这么写只能获得最后一个bookid 因为你的hidden的Name都是一样的所以只有最后一次循环赋值起了作用可以把bookid附到url后面传递过去不用表单 直接<a href="Result2.jsp?bookid=${bookid}"></a>
      

  6.   

    你这个方法我实现了,但是如果用href做链接,不用表单post提交,应用JSTL技术对中文处理会出现乱码。直接应用java scriptlet是可以实现的,我已经实现,现在我就行在用JSTL实现一次。请在帮俺想想,谢谢!
      

  7.   


    <c:out       value="${row.bookId}"       />  
    <input       type="hidden"       value="${row.bookid}"       name="bookId">   你把bookId写成bookid了。
      

  8.   

    <form   action="Result2.jsp"   name="form1"   method="post">  
    <c:forEach   var="row"   items="${query1.rows}" varStatus="vs">
    <tr>
    <td>
    <c:out   value="${row.bookId}"   />
    <input   type="hidden"   value="${row.bookId}"   name="bookId${vs.index}">   //vs.index表示当前索引
    </td>
    <td>
    <a   href="#"   onclick="javascript:document.form1.submit()"> 编辑 </a>
    </td>
    </tr>
    </c:forEach>
    </form> 
      

  9.   

    首先感谢java_new_comer,给我一个提示思路。但是如果通过href做链接,在下一页怎么样才能把通过点击该链接的bookID取出来哪?例如,我想点击第二个href,也就是在下一页取出bookId2,怎么样写代码哪?谢谢!
      

  10.   

    我已经解决该问题,感谢java_new_comer,你给了我一个提示!给分