日期:2014-05-17  浏览次数:20875 次

有分页的表、对某个页面其中一条数据进行修改、修改完后、重新跳转到该页面出问题。。。
跳转页面:
 function updates(uid){
url="bookservlet.action?cmd=updatebook&uid="+uid+"&pageSize="+${page.pageSize}+"&num="+${page.num};
window.location.href=url;
}
步骤一:跳转到updatebook
private void updateBook(HttpServletRequest request, HttpServletResponse response) throws ServletExceptionIOException{
String uid=request.getParameter("uid");
Books books=new Books();
books.setBookId(Integer.parseInt(uid));
books=(Books)booksService.findOneBook(books);
request.setAttribute("book",books);
request.getRequestDispatcher("/admin/updatebook.jsp").forward(request, response);
}
步骤二:然后跳转到updatebook.jsp
<form action="bookservlet.action?cmd=changeBook" method="post">
<%--设置隐藏域 --%>
   <input type="hidden" name="beanName" value="com.books.po.Books"/>
<input type="hidden" name="bookId" value="${book.bookId}">
<input type="hidden" naem="pageSize" value="${param.pageSize}" />
<input type="hidden" naem="num" value="${param.num}" />
<table width="80%" border="1" bordercolor="#0066FF" style="border-collapse:collapse">
  <tr>
    <td width="23%"><div align="right">书名:</div></td>
    <td width="77%">&nbsp;<input name="bookName" type="text" value="${book.bookName}" /></td>
  </tr>
.........
步骤三:然后到changeBook.
private void changeBook(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{
Books books=(Books)request.getAttribute("beanObject");
int state=booksService.updateBook(books);
if(state==1){
request.getRequestDispatcher("/admin/updateok.jsp").forward(request, response);
}else if(state==0){
request.getRequestDispatcher("/admin/updateerror.jsp").forward(request, response);
}
步骤四:跳转到修改成功页面updateok.jsp。然后通过这个页面跳转到我修改的那一页。直观的看到修改结果。
<script type="text/javascript">
var count=5;
var countM=window.setInterval(function(){
var sp=document.getElementById("showspan");
count--;
sp.innerHTML=count;
if(count==1){
window.clearInterval(countM);
/*为什么在步骤二中我可以通过param.pageSize,param.num得到每页页数,与当前点击页。在这里就获取不到。跳转回去时又跳转到第一页去了、而不是我当前的修改页面?????*/
window.location.href="bookservlet.action?cmd=checkbooks&pageSize=${param.pageSize}&num=${param.num}}";
}
},1000);
</script>
}

param.pageSize的作用不是等同于:request.getParamter("pageSize").
为什么我在步骤四就获取不到了??????


------解决方案--------------------
是不是因为 updatebook.jsp 文件中,隐藏域处的代码写错了?
修改前:
<input type="hidden" naem="pageSize" value="${param.pageSize}" />

修改后:
<input type="hidden" name="pageSize" value="${param.pageSize}"&