由于工作原因,无法复制出代码,本人较懒,所以该功能实现无代码,纯思路。背景:有个新增模块,新增分为4步,第一步输入基本信息,第二步从列表中选择数据进行关联。第三步对选择的数据进行显示,并排序,第四步... 
在第二步中的数据列表中由于数据很多,所以进行了分页功能实现,众所周知,分页功能的实现就是对页面的刷新功能,这个很多公司的框架中都会有这个东西,但是如果我在第一页选择了一条数据,我再从第二月选择一条数据后,提交到第三步时,数据显示的时候,只会显示第二页,或者说最后一页选择的数据....    这个问题,怎么办? 
我的解决办法:在每一条数据前的复选框添加 Onclick事件,checkbox点击会有两种结果:1、被选中   2、没被选中
if(被选中){
    将选择数据的ID以“,”拼接,存储在一个 <input type="hidden"> (简称HIDDEN)中
}else if(没被选中){
    获得这条数据的ID ,hidden  中的字符串,然后将“没被选中”的这条数据的ID 在这个字符串中清除
}
(这样选中,取消,选中,取消可能字符串里会出现,,,,,这样的情况,在后台处理的时候,记得处理一下哈。)分页肯定会跳转到ACTION里,记得,一定要将咱们这个hidden标签里的进行提交哈,而且  这个HIDDEN里面的value 里值,不管是第几页,一定要是咱们再ACTION里来回传递的值哟!!!当提交到第三步的时候  将这个 hidden的标签提交,然后在第三步的时候通过ID串进行查询选择。 
好吧。当我这么做了之后,实现了这个功能,我发现框架里的全选功能貌似不好使了。好吧。 
我又做了一个处理,当我全选了之后,我会对HIDDEN立面的字符串,和全部选中的字符串进行比较,这里就是实现一个去重和再次拼接的功能。
这个一定得要,如果我在第一页选择一个,我又在第二页选择一个,那么咱们存的那个字符串里会有两个ID ,当我再返回第一页的时候我不能把全选的那页的ID 全部拼接存在HIDDEN里面,因为我第二页有数据,我也不能直接拼接,那样第三步中取数据的时候,会有重复的。 
好吧。这个功能我的思路就是这么写的,我实现了,可能很复杂,可能有些插件或者框架直接就能实现,可是我开发的这项目,木有这个功能,我只能这么写,仅供参考,如有疑问,请提出来。欢迎指教。分页选择JSP分页

解决方案 »

  1.   

    最好的方式是以 jquery.pagination 插件为原本, 在此基础上修改。 看懂了人家的使用方法, 自己稍稍改一下就好。 很简单的。没有必要重造轮子
      

  2.   

    你看明白了 jquery.pagination 吗? 你明白 jquery.pagination 和你的分页组件的区别与共同之处吗?先在自己电脑上, 做一个最简单的但能连接数据库的 jquery.pagination 的分页demo, 再应用到你的办公环境中去。 jquery.pagination 适合于ajax请求分页, 最好是后台构造好了json再返回。 已经提示了很多, 你先做吧。