您的位置:首页 > 编程语言 > PHP开发

Ajax删除效果的实现思路和注意细节

2012-10-17 10:08 232 查看
一般而言,如果普通删除我们通常要频繁刷新网页,没进行一次删除操作就要刷新一次页面,用户体验很不好,自己用着也不舒服。

好在我们拥有ajax这个好帮手,它能让我们进行无刷新的删除操作。实现起来大家肯定都知道,js事件调用远程php代码,但是这里有些细节还是要注意:

1、对分页的影响

我们这里假设用的是普通分页,那么在你用ajax删除条目时,由于页面不刷新,如果删除的条目导致分页数目变化时,怎么办呢?

解决办法:在每次ajax删除后,生成新的分页,传回给前台,替换当前分页。

2、智能翻页

如果我们恰巧把当前页面的条目全部删除了,而又有其他条目,怎么办呢?因为ajax删除不刷新页面我们就这样停留在当前页面吗?当然不,该刷新还得刷新。

解决办法:在每次ajax删除完后,判断当前页面的条目数,如果一条也没有了,进行翻页跳转,如果当前页的下一页有数据就跳转到下一页,如果当前页的下一页没有数据而上一页有数据,就跳转到上一页,如果没有任何数据了就可以不跳转或者跳转到一个提示页面都可以。跳转到的页码应该是从后台返回的,因此在后台的php脚本里需要写一些判断代码,判断上一页或者下一页是否有数据。如何判断呢?简单的方法就是在后台算出剩余数据的页数,比如当前是第3页,总共有10页,我把第3页的数据全部删除后,还剩下9页,那么由于存在第四页,所以可以返回4,当然由于原先的第3页被删除了,现在有新的第3页,返回3也可以的,只要返回有数据的页码就可以,这个看个人喜欢。

以上我们谈及的情况,是ajax删除效果+普通分页;那么ajax删除效果+ajax分页是不是也这样处理呢?应该说逻辑过程是一样的,不一样的细节是,ajax分页效果中,每一页的数据都是通过ajax从后台返回到前台的,因此在进行智能翻页的时候就不能跳转了而是要直接返回翻页后的数据给前端,同时也一样要替换当前的分页码。

这里只是给出了大体思路和一些细节问题的解决办法,在具体写代码时,一些情况的处理方法是有很多的。比如,我如何判断当前页面的数据被全部删除了并做智能跳转呢?这个问题就留给大家讨论吧,如果有好的解决方案不妨共享出来哦~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ajax php 脚本