easyui-pagination点击下一页直接跳转到最后一页的可能原因

今天做到聊天记录展示页面的时候发现一个bug:初次进入页面加载出第一页的数据,点击下一页的时候不是到第二页而是到最后一页。 如下图所示:

这个bug确实让我很郁闷,最初以为是后台的问题,调试了一会儿发现跟后台没关系。

随后检查了下js代码,我的pagination js是这样写的: Js代码

$('#pp').pagination({

total:'${chatHistory.total}', pageNumber: '${pageNum}', pageSize:'${pageSize}',

onSelectPage:function(pageNumber, pageSize){ $(this).pagination('loading');

//alert('pageNumber:'+pageNumber+',pageSize:'+pageSize);

$(this).pagination('loaded');

self.location.href=\oChatHistory.action?senderId=${senderId}&page=\\ } });

上面pagination的pageNumber是从hidden标签中取得值,经过alert('${pageNum}'),初次进入页面时,弹出的值 确实是“1”。 找了半天没结果,我索性把pageNumber :'${pageNum}'改成pageNumber : 1,结果bug消失了!

我非常纳闷:pageNumber : '${pageNum}'向后台传的值是1,而pageNumber : 1向后台传的值也是1,两者完全没区别,但为什么后者点下一页就不会跳到最后一页呢?

最后找到原因:js数据类型问题。我随后把代码改成这样:pageNumber : parseInt('${pageNum}')。ok,bug消失了,原来'${pageNum}'的值是一个字符串“1”,pageNumber只接收 整数,无法识别字符串没结果造成了刚才的问题。

经过上面的排查,我大概猜想easyui的整个运行过程:

第一次向后台发送请求时,datagrid会获取pageNumber中的值,并且把pageNumber的值保存起来。

用户点击下一页的时候,datagrid会使pageNumber+1然后把数据向后台发送,但是正如上面所说:如果遇到$(\存的是一个字符串“1”, 结果“1”+1会是一个字符串而不是一个整数,此时datagrid没法识别,就选择获得最后一页的数据。

easyUI pagination分页控件点击下一页后跳转到最后一页的更多相关文章

  1. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  2. jQuery Pagination Plugin ajax分页控件

    <html> <body> <div id="datagrid"> </div> <div id="paginati ...

  3. asp.net分页控件

    一.说明 AspNetPager.dll这个分页控件主要用于asp.net webform网站,现将整理代码如下 二.代码 1.首先在测试页面Default.aspx页面添加引用 <%@ Reg ...

  4. 基于Bootstrap仿淘宝分页控件实现

    .header { cursor: pointer } p { margin: 3px 6px } th { background: lightblue; width: 20% } table { t ...

  5. 基于MVC4+EasyUI的Web开发框架经验总结(2)- 使用EasyUI的树控件构建Web界面

    最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...

  6. 使用EasyUI的树控件构建Web界面

    最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开发框架保持一致,而在Web上,我主要采用EasyUI的前端界面处理技术,走MVC的技术路线,在重 ...

  7. (转)基于MVC4+EasyUI的Web开发框架经验总结(2)- 使用EasyUI的树控件构建Web界面

    http://www.cnblogs.com/wuhuacong/p/3669575.html 最近花了不少时间在重构和进一步提炼我的Web开发框架上,力求在用户体验和界面设计方面,和Winform开 ...

  8. 自定义WPF分页控件

    一.分页控件功能说明 实现如上图所示的分页控件,需要实现一下几个功能: 可以设置每页能够展示的最大列数(例如每页8列.每页16列等等). 加载的数组总数量超过设置的每页列数后,需分页展示. 可以直接点 ...

  9. sharepoint 2010 列表数据分页控件介绍 pagination UserControl

    转:http://blog.csdn.net/chenxinxian/article/details/8714391 这里主要是介绍下最近开发的一个sharepoint列表或者文档库的分页控件,并且把 ...

随机推荐

  1. E. Dasha and Puzzle 数学题

    http://codeforces.com/contest/761/problem/E 给出一颗树,要求在坐标系中用平行于坐标轴的线描绘出来. 要求边不能相交,而且点的坐标唯一. 注意到2^1 + 2 ...

  2. 解决asp.net 以及MVC中上传文件大小限制的问题

    ﹤system.web﹥ ﹤httpruntime requestlengthdiskthreshold="256" maxrequestlength="2097151& ...

  3. js 验证码倒计时效果

    function settime(obj) { if(second == 0){ obj.removeAttribute("disabled"); obj.value=" ...

  4. html5表单新增元素与属性2

    1.标签的control属性 在html5中,可以在标签内部放置一个表单元素,并且通过该标签的control属性来访问该表单元素. <script> function setValue() ...

  5. 打包Scala jar 包的正确步骤

    实验目的:打包可运行的scala jar,上传到spark集群,提交执行 1.idea中编译运行代码,可成功运行 2.修改2处代码//只配置appName,其他配置项注释掉val conf=new S ...

  6. 【C++】模板简述(一):模板的引入

    我们在介绍模板之前,首先想象有这么一个场景: 我们需要通过C++写出一个通用的加法程序,那么有如下几种方法: 方法一:C++的函数重载 //int int int int Add(int l,int ...

  7. vue1.0生命周期

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. pthread Win32多线程编程的一些知识和感想

    研究遗传算法的一大诟病就是每次运行程序的结果并不是完全一样的,有时候能找到最优解有时候找不到最优解,这就是遗传算法的概率性导致的.那么怎么评价你的方法的好坏呐,这时候就要多次独立运行程序最后取结果的平 ...

  9. spring中路径的注入

    @RequestMapping("${mgt}/file") //请求的路径的统一添加,需要在mvc层配置<context:property-placeholder loca ...

  10. CREATE GROUP - 定义一个新的用户组

    SYNOPSIS CREATE GROUP name [ [ WITH ] option [ ... ] ] where option can be: SYSID gid | USER usernam ...